码迷,mamicode.com
首页 > 其他好文 > 详细

多物体的运动,实现切换

时间:2016-09-17 16:17:49      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:

上面一篇简要指明了多物体的淡入淡出,主要是把握定时器的用法与参数及速度的处理,这篇介绍一下多个物体的运动,和单个物体的运动有点区别。

 

下面是写一些简要代码:

 

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
div { width: 100px;height: 50px;background: red;margin-top: 30px; border: 3px solid black;}
</style>
<script type="text/javascript">
window.onload = function(){

var oDiv = document.getElementsByTagName(‘div‘);
var i=0;
for(i=0;i<oDiv.length;i++){
oDiv[i].timer = null;                          //设置多个定时器,给定时器一个索引值
oDiv[i].onmouseover = function(){
setMove(this,300);                          //为当前的div加上样式,后面一个参数是要设置的目标值
}
oDiv[i].onmouseout = function(){
setMove(this,100);
}
}
};

 

function setMove(obj,iTarget){                    //设置多个参数
var timer = null;
clearInterval(obj.timer);                       //在开启定时器之前,关闭当前的定时器
obj.timer = setInterval(function(){                  //为当前div设置定时器

var iSpeed = (iTarget-obj.offsetWidth)/8;
iSpeed=iSpeed>0?Math.ceil(iSpeed):Math.floor(iSpeed);       //将当前的速度转化成整型值
//Math.ceil向上取整,Math.floor向下取整
if(obj.offsetWidth==iTarget){
clearInterval(obj.timer); //清除当前div的定时器
}else{
obj.style.width =obj.offsetWidth+iSpeed+‘px‘;            //将div的宽以一定速度增加
}
},30);
}
</script>
</head>
<body>
<div></div>
<div></div>
<div></div>
</body>
</html>

 

当然这里的运动,运动形式还比较单一,只针对宽度或者高度,并没有实现多个形式的运动,这里将在下面在简单介绍一下

多物体的运动,实现切换

标签:

原文地址:http://www.cnblogs.com/slientLove/p/5878977.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!