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

js动画透明度效果,有点问题求教

js动画透明度效果,有点问题求教

、_0007 2014-08-28 10:38:18
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>透明動畫</title><style type="text/css">body,div{    margin:0;    padding:0;}#div1{    width:200px;    height:200px;    background:red;    filter:alpha(opacity:30);    opacity:0.3;}</style></head> <body><div id="div1"></div><script type="text/javascript">window.onload = function(){    var oDiv = document.getElementById('div1');    oDiv.onmouseover = function(){      startMove(100);    }    oDiv.onmouseout = function(){      startMove(30);    }}var timer=null;var alpha = 30;function startMove(iTarget){    var oDiv = document.getElementById('div1');    clearInterval(timer);//先關定時器    timer=setInterval(function(){      var speed = 0;        if(alpha>iTarget){            speed=-10;          }else{            speed =10;          }        if(alpha == iTarget){            clearInterval(timer);          }else{            alpha+=speed;            oDiv.style.filter='alpha(opacity:'+alpha+')'; //for IE            oDiv.style.opacity=alpha/100;            //for Chrome及Firefox              }    },30)}</script></body></html>鼠标离开事件。。iTarget=30,定义的alpha=30.。那么 if(alpha == iTarget)成立,不就关了定时器??如何运作的?
查看完整描述

2 回答

?
快乐的小牛妞

TA贡献22条经验 获得超19个赞

鼠标移入的时候,alpha随着程序变化30.40.50.60...100,当alpha =100时,与目标值一样,停止;  鼠标移出的时候,alpha从100开始递渐,而不是自定义的30开始,所以递减后100,90,80....30,alpha =30时,与目标值一样,停止,关闭定时器,所以透时度也就不会再变化了。

查看完整回答
反对 回复 2016-03-04
?
赵小布

TA贡献25条经验 获得超7个赞

关掉定时器,div块的颜色的透明度就到30%就不会再变化了。

查看完整回答
反对 回复 2014-08-28
  • 2 回答
  • 0 关注
  • 1761 浏览
慕课专栏
更多

添加回答

举报

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