document.onmouseup = function(){ _this.fnup(); } } Drop.prototype.fnmove = function(ev){ var e = ev||window.event;
this.oDiv.style.top = e.clientY-this.disY+'px'; this.oDiv.style.left = e.clientX-this.disX+'px'; } Drop.prototype.fnup = function(){ document.onmousemove = null; document.onmouseup = null; } Drop.prototype.fnautomove = function() { var _this = this; setInterval(function(){ var top = _this.oDiv.offsetTop; var left = _this.oDiv.offsetLeft; if(top<0||top>document.documentElement.clientHeight-_this.oDiv.offsetHeight) { _this.speedY = -_this.speedY; } if(left<0||left>document.documentElement.clientWidth-_this.oDiv.offsetWidth){ _this.speedX = -_this.speedX; } top += _this.speedY; left+=_this.speedX; _this.oDiv.style.top = top+'px'; _this.oDiv.style.left = left+'px'; },10) }
Drop.prototype.pz = function(balls){ var _this = this; setInterval(function() { var zjc = []; for(var i = 0;i<balls.length-1;i++){ var y =(parseInt(balls[i].offsetTop)+parseInt(balls[i].offsetHeight)/2)-(parseInt(balls[i+1].offsetTop)+parseInt(balls[i+1].offsetHeight)/2); var x = (parseInt(balls[i].offsetLeft)+parseInt(balls[i].offsetWidth)/2)-(parseInt(balls[i+1].offsetLeft)+parseInt(balls[i+1].offsetWidth)/2); // console.log(x) zjc.push(Math.sqrt(x*x+y*y)); } console.log(zjc) for(var j=0;j<zjc.length;j++){ if(zjc[j]<200){ _this.speedX = -_this.speedX;
// _this.speedY = -_this.speedY } } },0) }
function LimitDrop(id) { Drop.call(this,id); this.speedX = -1; this.speedY = -1; } for(var i in Drop.prototype){ LimitDrop.prototype[i] = Drop.prototype[i]; }
LimitDrop.prototype.fnmove = function(ev) { var e = ev||window.event; var left = e.clientX-this.disX; var top = e.clientY-this.disY; if(left<0){ left = 0; } else if(left>document.documentElement.clientWidth-this.oDiv.offsetWidth){ left = document.documentElement.clientWidth-this.oDiv.offsetWidth; } if(top<0){ top = 0; } else if(top>document.documentElement.clientHeight-this.oDiv.offsetHeight) { top = document.documentElement.clientHeight-this.oDiv.offsetHeight; } this.oDiv.style.top = top+'px'; this.oDiv.style.left = left+'px'; }