对移动端滚动高度的获取 通过采用原生js的方法来实现,绑定vue中的dom元素,通过添加ref来获取,但是同名只能绑定一个,this.$refs.domName来获取,
function homeScrollEvent() {
const pageScrollTop = document.body.scrollTop
if (pageScrollTop > 80) {
store.dispatch(‘updateHeader‘, false)
} else {
store.dispatch(‘updateHeader‘, true)
}
}
处理浏览器前进后退问题
router.beforeEach((to, from, next) => {
if (to.meta.isHome) {
store.dispatch(‘updateHeader‘, true)
document.addEventListener(‘scroll‘, homeScrollEvent)
} else {
document.removeEventListener(‘scroll‘, homeScrollEvent)//移除scroll监听事件,事件名必须与添加监听完全一致才能移除成功
store.dispatch(‘updateHeader‘, false)
}
next()
})
时间: 2024-10-10 16:16:38