为什么鼠标移开后,width到256px就不再减少了?

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

di7xian

2016-12-01 11:08

写回答 关注

2回答

  • 方衡
    2016-12-01 11:27:38

    你可以封装一个函数来得到当前元素的宽度,就不会受边框宽度的影响了。

    //获取样式

    function getStyle(obj,attr){

    if(obj.currentStyle){

    return obj.currentStyle[attr];//IE

    }else{

    return getComputedStyle(obj,false)[attr];//firefox

    }

    这样来进行运动obj为运动的元素

    obj.style.width=parseInt(getStyle(obj,"width"))-1+"px";

  • 方衡
    2016-12-01 11:24:48

    因为你设置了边框宽度为4,当前元素的宽度就变成了208px,计时器每执行一次,都给你加了8px,所以最后会多56px

JS动画效果

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

113925 学习 · 1443 问题

查看课程

相似问题