代码中的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>
第二钢协
相关分类