最新回答 / Anll
function startMove(){ clearInterval(timer); var oDiv=document.getElementById("div1"); timer=setInterval(function(){ if (oDiv.offsetLeft == 0) { clearInterval(timer); } else { oDiv.style.left = oDiv.offsetLeft +...
2016-04-13
已采纳回答 / 风随依然
首先,尽量不要用onmousemove去实验,而是用onmouseover.其次,odiv1.offsetLef ==0 其中,offsetLef 书写错误,应为offsetLeft.最后,解决方案,在css部分加上body{margin: 0; padding: 0;} 可使计时器生效。
2016-04-12
已采纳回答 / 从此浪迹天涯了无牵挂
你试一下把move.js里面的var flag = true;挪动到定时器里面。因为链式调用,如果调用结束第一个, if(icur !== json[attr]){ flag=false; } if(attr=='opacity'){ obj.style.filter='alpha(opacity:'+(icur+speed)+')'; obj.style.opacity = (icur+speed)/100; } else{ obj.style[att...
2016-04-12
已采纳回答 / 風雨纏溪
parseInt是获取整数,而后面的oDiv.style.width是获取的在body下面标签里的格式,之前用oDiv.offsetLeft是直接获取style里的值,但是在style里如果给oDiv加上了边框,那么offsetLeft就不能准确获取left的值了,而是获取left+边框的值,这里的oDiv.style.width不会有这个问题,但是还是很麻烦,因此后来又封装了一个函数,也就是getStyle()函数function getStyle(obj,attr){ if(obj.currentSt...
2016-04-11