offsetLeft和style.left的区别:
offsetLeft返回的是数字,style.left返回的是字符串,除了数字还有‘px’;
offsetLeft只读,style.left可写。
这里style.left是随定时器而变动的。
offsetLeft返回的是数字,style.left返回的是字符串,除了数字还有‘px’;
offsetLeft只读,style.left可写。
这里style.left是随定时器而变动的。
2017-06-07
这节视频有很多有意思的点:
1. 老师使用了element.offsetLeft属性,如果不使用这个属性,会需要增加好几行代码来实现。
2. 不仅可以使用setInterval(),还可以使用setTimeout()或requestAnimationFrame()函数来达到目的。
3. 老师的代码中的结束条件存在bug,当target的值不是speed的整数倍时,动画不会停止。
4. 即使正确设置了speed和target的值,返回触发鼠标事件,动画也可能用于不会停止。在开始状态和目标状态间闪来闪去。
1. 老师使用了element.offsetLeft属性,如果不使用这个属性,会需要增加好几行代码来实现。
2. 不仅可以使用setInterval(),还可以使用setTimeout()或requestAnimationFrame()函数来达到目的。
3. 老师的代码中的结束条件存在bug,当target的值不是speed的整数倍时,动画不会停止。
4. 即使正确设置了speed和target的值,返回触发鼠标事件,动画也可能用于不会停止。在开始状态和目标状态间闪来闪去。
2017-05-30
最新回答 / charsandrew
又看了下代码: 发现了其实主要是没能有效的清除定时器的问题,把代码改成下面这样就可以运行。<...code...>将函数提出来放到事件外面定义效率更高,再将两个move函数合并在一起代码会更简洁。
2017-05-30