为什么不能这样写??oDiv.offsetLeft = oDiv.offsetLeft+10+'px';???

来源:2-1 JS速度动画

无敌小哥儿

2016-12-07 15:39

为什么不能这样写??oDiv.offsetLeft = oDiv.offsetLeft+10+'px';???而必须写成这样oDiv.style.left = oDiv.offsetLeft+10+'px'??

写回答 关注

2回答

  • 慕神0233561
    2016-12-07 16:25:44
    已采纳

    oDiv.style.left

    这句话的意思是,oDiv这个元素的类型,里面的left,是一个类型;

    offsetLeft   当前对象的外边框到它上层对象的内边框之间的距离(即与Body的距离)

    oDiv.offsetLeft 

    oDiv这个元素现在(当前)的left值,是一个数值;

    所以这个oDiv.offsetLeft 不能写成数值等于数值,格式不对

    无敌小哥儿

    非常感谢!

    2016-12-07 23:11:35

    共 1 条回复 >

  • 王小毓
    2016-12-07 17:17:21

    oDiv.offsetLeft 是不可更改的属性,当前取出来多少就多少,而oDiv.style.left是可以更改的。

JS动画效果

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

113925 学习 · 1443 问题

查看课程

相似问题