课程
/前端开发
/HTML/CSS
/回到顶部效果
我试了一下,放到外面去就不行了,这是咋么回事
2015-11-13
源自:回到顶部效果 4-2
正在回答
首先,osTop是当前滚动条距离页面顶部的距离,其次是osTop这个值被window.scroll监听,也就是每次触发滚动条事件都会记录一次osTop的值,并且这个值每次还要减去一个ispeed~~(重点就是,将osTop放在window.scroll里面 就是为了每次触发滚动条事件 就记录一次当前距离页面顶部的值)
comlejade 提问者
试想,如果你把它声明为全局变量,那osTop就是一个定值(也就是不会随着滚动条的滚动而改变了),这样就没办法实现由快到慢的返回顶部效果了。。。其实,我猜想你出错的原因可能是 把osTop放到外面后,就代表加载页面时就触发了document.body.scrollTop,那么这个时候osTop的值 必定为 0; 所以 -osTop/6 就等于 -0/6, 这样还能不报错吗?
因为他是内部定义的 而且其他函数都有私有定义这个名字 所以会报错的
举报
回到顶部网站不可缺少的一部分,用JS实现炫酷拉风的回到顶部效果