一开始将stop赋值为false,点击按钮时定时器里不用给stop重新赋值,同时触发onscroll事件,不会清除定时器,stop变为true;如果用户自己滚动滚动条,说明没有经过定时器,这时在onscroll事件里stop是true(上一次按钮滚动赋得值),就会清除定时器
2017-07-03
这里为什么老是要用负数而不是直接向上取值,是考虑到体验效果。从console.log中可以看出,最后到顶部的时候,负数是3,2,0,而Math.ceil是3,2,1,0,给人的感觉是到顶部最后太慢太卡了。个人建议还是用老是的Math.floor好一点。
2017-06-22