【Vue】 scrollTop赋值一直为0
Vue项目中,给scrollTop赋值一直0,解决方案总结如下:mounted中:window设置scroll滚动事件window.addEventListener('scroll', () => {this.scrollGroupSetting()}, false)destroyed中:移除scroll滚动事件window.removeEventListener('scroll', thi
·
Vue项目中,给scrollTop赋值一直0,解决方案总结如下:
mounted中:window设置scroll滚动事件
window.addEventListener('scroll', () => { this.scrollGroupSetting() }, false)
destroyed中:移除scroll滚动事件
window.removeEventListener('scroll', this.scrollGroupSetting(true), false)
获取scrollTop的值
scrollGroupSetting (isDestroy) { if (isDestroy) { return } // 滚动条滚动高度 this.scrollTop = document.documentElement.scrollTop || document.body.scrollTop || 0 },
设置scrollTop的值
document.documentElement.scrollTop = this.scrollTop
document.body.scrollTop = this.scrollTop // chrome
发现document.documentElement.scrollTop和document.body.scrollTop一直为0
解决方法
this.$nextTick(() => { document.documentElement.scrollTop = this.scrollTop document.body.scrollTop = this.scrollTop // chrome })
在这里一定要加上this.$nextTick()方法,否则scrollTop的值一直为0,不会赋值成功的!
更多推荐
已为社区贡献6条内容
所有评论(0)