vue路由跳轉時定位在頁面頂部

背景

路由跳轉時進入新的頁面,但位置卻不在頂部,而是在上個頁面瀏覽的位置,在每次進入新頁面時,想讓它定位在頁面的頂部。

代碼

方式一

main.js

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

每次點擊分頁的時候,頁面也會停留在之前瀏覽的位置,在調完接口后也加入下面幾行代碼就好了。

// chrome
document.body.scrollTop = 0
// firefox
document.documentElement.scrollTop = 0
// safari
window.pageYOffset = 0

方式二

router-index.js

const router = new VueRouter({
  routes: [...],
  scrollBehavior (to, from, savedPosition) {
    // return 期望滾動到哪個的位置
    return { x: 0, y: 0 }
  }
})

網站導航

網站導航

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,940評論 25 709
  • 用兩張圖告訴你,為什么你的 App 會卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 13,953評論 2 59
  • 1、通過CocoaPods安裝項目名稱項目信息 AFNetworking網絡請求組件 FMDB本地數(shù)據(jù)庫組件 SD...
    陽明AI閱讀 16,196評論 3 119
  • 沒有開始卻已經結束的感情,就把它放在心里爛掉吧。大概以后會找到一個喜歡的人陪伴日日夜夜,但不會再有人像她那樣,因為...
    羽渡閱讀 411評論 1 2

友情鏈接更多精彩內容