猿问

实现不了淡入淡出的图片

代码中的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>



Xianyu0
浏览 417回答 1
1回答

第二钢协

用css3 transition一句代码搞定的事儿,没必要搞这么多js
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答