1.filter属性定义了元素的可视效果(一般都是img属性)滤镜通常使用百分比或者小数表示
2.和速度动画的思想差不多,不过由于没有类似offsetLeft的属性,所以就通过一个变量记录透明度的变化过程
3.函数通过目标透明度和目前透明度的比较得出应该怎样变化
<script type="text/javascript">
window.onload = function(){
var oDiv = document.getElementById ('div1');
oDiv.onmouseover = function(){
startMove(100);//透明度变为100
}
oDiv.onmouseout = function(){
startMove(30);//透明度变为30
}
}
var timer = null;//一开始设置为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+')';//IE
oDiv.style.opacity = alpha/100;//火狐,chrome
}//改变透明度
},30)
}