vue页面跳转,滚动条回到顶部

4,223 阅读1分钟

前言

在vue项目,我的一个页面内容滚动到底部,再跳转至其它页面,滚动条会停在底部... 测试了好多种

WechatIMG291.jpeg 在进行跳转后 滚动条的位置还是在上一个页面

WeChatbc40ff681696579475c3a3d32475ec9c.png

解决办法

只要在路由跳转时手动把滚动条的位置设置到顶部不就好了嘛! 下面这个代码就是设置成顶部

  document.body.scrollTop = 0
  // firefox
  document.documentElement.scrollTop = 0

但设置了 还要知道啥时候路由跳转 然后跳转时候加上这个 在vue-router有个全局路由导航,里面可以拦截所有的路由跳转 完整的代码就是下面

router.beforeEach((to, from, next) => {
  document.body.scrollTop = 0
  // firefox
  document.documentElement.scrollTop = 0
  next()
})

WeChat80cbfa70302cb9a726bc7aa3302c6cef.png