标签:ges padding 图片 osi width nts abs current parse

HTML
<div id="box"></div>
CSS
*{
margin: 0;
padding: 0;
}
#box div{
width: 50px;
height: 50px;
background: red;
position: absolute;
top: 10px;
}
JS
var oBox=document.getElementById("box");
var aDiv=oBox.getElementsByTagName("div");
var num=0;
var timer=null;
//生成div
for (var i=0;i<10;i++) {
oBox.innerHTML+="<div style=‘left: "+(i+1)*60+"px;‘></div>"
}
//点击div往下掉
var onOff=true;
document.onclick=function(){
clearInterval(timer);
var oTop=parseInt(getStyle(aDiv[aDiv.length-1],"top"));
if(oTop==400){
onOff=false;
}else{
onOff=true;
}
timer=setInterval(function(){
if(onOff){
moveTo(aDiv[num],"top",400,10);
}else{
moveTo(aDiv[num],"top",10,10);
}
num++;
if(num>=aDiv.length){
clearInterval(timer);
num=0;
}
},1000)
}
function moveTo(obj,attr,target,dir,endFn){
clearInterval(obj.timer);
dir=parseInt(getStyle(obj,attr))<target?dir:-dir;
obj.timer=setInterval(function(){
var speed=parseInt(getStyle(obj,attr))+dir;
if(speed>target&&dir>0||speed<target&&dir<0){
speed=target;
}
obj.style[attr]=speed+"px";
//清除定时器
if(speed==target){
clearInterval(obj.timer);
if(endFn){
endFn();
}
}
},30)
}
function getStyle(obj,attr){
if(obj.currentStyle){
return obj.currentStyle[attr];
}else{
return getComputedStyle(obj)[attr];
}
}
标签:ges padding 图片 osi width nts abs current parse
原文地址:http://www.cnblogs.com/yangxue72/p/7851079.html