代码中的num代表的是不透明度的值(代码已加粗num变量)。如果在变量声明了num的值能正常实现淡入淡出的效果。我的疑惑是假如不在前面定义初始化num了,num以参数形式在函数中声明直接调用这个方法,就实现不了这效果。为什么呢为什么呢话比较糙,不知道有人能给我解答不,感激不尽。。<style>#div1{width:200px; height:200px; background:red; filter:alpha(opacity:30); opacity:0.3;}</style><script>window.onload=function(){ var oDiv=document.getElementById("div1"); var timer=null; //var num=30; function show(num,iTarget){ clearInterval(timer); timer=setInterval(function(){ var speed=0; if(num<iTarget){ speed=10; } else{ speed=-10; } if(num==iTarget){ clearInterval(timer); } else{ num=num+speed; oDiv.style.filter="alpha(opacity:'+num+')"; oDiv.style.opacity=num/100;} },30); } oDiv.onmouseover=function(){ show(30,100); }; oDiv.onmouseout=function(){ show(30,30); } }</script></head><body><div id="div1"></div></body>
添加回答
举报
0/150
提交
取消
