写点什么

Vue 进阶(九十九):页面锚点至顶部

发布于: 2 小时前
Vue进阶(九十九):页面锚点至顶部

一、应用场景

vue项目开发时,发现路由跳转之后,页面默认停留在当前浏览的位置,但是很多时候我们想要的是路由跳转之后,页面重新定位到顶部,下面介绍一下可以实现的方法。

二、方式一

main.js 中添加代码:


router.afterEach((to, from, next) => {  window.scrollTo(0, 0)})
复制代码

二、方式二

如果需要某个页面跳转回顶部,仅需要在当前页面(page)合适的位置加入一下代码即可:


// chromedocument.body.scrollTop = 0// firefoxdocument.documentElement.scrollTop = 0// safariwindow.pageYOffset = 0
复制代码

三、方式三

在路由index.js中,加入以下代码也可实现路由改变定位到顶部的效果,savedPosition 当且仅当通过浏览器的前进/后退按钮触发时才可用,代码如下:


scrollBehavior(to, from, savedPosition) {    if (savedPosition) {        return savedPosition    }    return {        x: 0,        y: 0    }}
复制代码


应用以上方法,会发现每次打开页面都是显示的是页面顶部内容,再也不会显示页面底部或者其他位置影响用户体验。

发布于: 2 小时前阅读数: 2
用户头像

No Silver Bullet 2021.07.09 加入

岂曰无衣 与子同袍

评论

发布
暂无评论
Vue进阶(九十九):页面锚点至顶部