为了账号安全,请及时绑定邮箱和手机立即绑定

obj.alpha 是怎么样才能大于iTarget啊

obj.alpha 是怎么样才能大于iTarget啊

Yeah___ 2018-03-22 21:03:30
<!DOCTYPE html> <html> <head>   <meta charset="UTF-8">   <title>Document</title>   <style>     body,div{       margin: 0px;       padding: 0px;     }     div{       width:200px;       height: 200px;       background: red;       margin:10px;       float: left;       opacity: 0.3;     }   </style>   <script type="text/javascript">     window.onload=function(){       var oDiv= document.getElementsByTagName('div');       for (var i=0;i<oDiv.length;i++){         oDiv[i].alpha=30;//若多个物体要进行自己的运动,不造成其他物体的影响,需对每个物体定义一个alpha.也可设置oDiv[i].timer = null;         oDiv[i].onmouseover=function(){           startMove(this,100);//this为当前的物体         }         oDiv[i].onmouseout=function(){           startMove(this,30);         }       }     }     //obj被套用为this,从而可以在每个alpha或timer上,进行套用.     function startMove(obj,iTarget){       clearInterval(obj.timer);//先要将原本的动画效果取消.       obj.timer = setInterval(function(){         var speed = 0;         if(obj.alpha>iTarget){           speed = -10;         }         else{           speed = 10;         }         if(obj.alpha == iTarget){           clearInterval(obj.timer);         }         else{           obj.alpha+=speed;            obj.style.opacity = obj.alpha/100;         }       },30)     }   </script> </head> <body>   <div></div>   <div></div>   <div></div>   <div></div> </body> </html>obj.alpha不是==iTarget时就清除动画了吗?
查看完整描述

1 回答

已采纳
?
qq_杀意隆_0

TA贡献93条经验 获得超29个赞

鼠标移入div时,speed为10,obj.alpha初始值为30,iTarget初始值为100,
然后每过30毫秒obj.alpha的值加10。
这样一直加下去直到obj.alpha==100时(obj.alpha == iTarget)停止。

然后鼠标开始移出div时,此时obj.alpha的值为100(上一过程加到了100的),而iTarget的初始值被设为30,
就是这时候obj.alpha的值大于iTarget啊。然后obj.alpha的值每过30毫秒减10直到等于30时停止。

https://img1.sycdn.imooc.com//5ab4532f0001abf508570639.jpg

查看完整回答
反对 回复 2018-03-23
  • 1 回答
  • 0 关注
  • 939 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信