【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,不会赋值成功的!
更多推荐



所有评论(0)