老师写的透明度变化不能实现,大神帮我看看

来源:4-4 任意属性值(二)

雪歌

2016-07-21 15:24

window.onload=function(){

// var aLi = document.getElementsByTagName('li');

// for(var i=0;i<aLi.length;i++){

// aLi[i].timer = null;

// aLi[i].onmouseover = function(){

// startMove(this,400);

// }

// aLi[i].onmouseout = function(){

// startMove(this,200);

// }

// }

var Li1=document.getElementById('li1');

Li1.onmouseover = function (){

startMove(this,'opacity',100);

}

Li1.onmouseout = function (){

startMove(this,'opacity',30);

   }

}

var alpha = 30;

function getStyle(obj,attr){

if(obj.currentStyle){

return obj.currentStyle[attr];

}

else{

return getComputedStyle(obj,false)[attr];

}

}


function startMove(obj,attr,iTarget){

clearInterval(obj.timer);

obj.timer = setInterval(function(){

var icur = 0;

if(attr == 'opacity'){

icur = parseFloat(getStyle(obj.attr))*100;

}

else{

    icur = parseInt(getStyle(obj,attr));

  }

var speed = (iTarget-icur)/8;

speed>0?Math.ceil(speed):Math.floor(speed);

if(icur == iTarget){

clearInterval(obj.timer);

}

else{

if(attr =='opacity'){

obj.style.filter = 'alpha(opacity:'(icur + speed) + ')';

obj.style.opacity = (icur + speed)/100;

}

else{

obj.style[attr] = icur + speed +'px';

}

}

},30)

}

http://img.mukewang.com/579078b10001c38213840272.jpg

第二个错误是自己一直在增长,可怕

写回答 关注

2回答

  • qq_早已褪色的梦_0
    2016-08-05 20:01:15

    这问题和我的竟然一样,

    icur = parseFloat(getStyle(obj.attr))*100;  这里参数用逗号分隔,你写成点了

  • 无痴
    2016-07-21 23:15:53

    function getStyle(obj,attr){

    if(obj.currentStyle){

    return obj.currentStyle[attr];

    }else

    {

    return getComputedStyle(obj,false)[attr];

    }

    }

    你这个怎么没有 ,好像少了个这个

    雪歌

    写了啊

    2016-07-23 10:47:22

    共 1 条回复 >

JS动画效果

通过本课程JS动画的学习,从简单动画开始,逐步深入各种动画框架封装

113925 学习 · 1443 问题

查看课程

相似问题