日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

解決使用window.open()或window.location.href跳轉后返回/后退原頁面不能再度跳轉的問題

作者:LangForOne 更新時間: 2023-10-25 編程語言

使用window.open()搭配參數_self(新頁面替換當前頁面),或使用window.location.href跳轉到新頁面后,再點擊后退到原頁面,再重新進行跳轉事件時,頁面不僅沒有進行跳轉,且沒有任何反應(控制臺無錯誤信息)。

說得籠統一點,這是因為第一次跳轉時window.open()或window.location.href已經記錄過一個要跳轉的值了,跳轉或后退到原頁面時,該值沒有被清空,再次執行事件時自然會沒有反應。

思路:

定義一個全局變量記錄window.open()打開的窗體
如過該變量被記錄過,則先關閉該窗口,然后再次打開新窗口即可


原有問題的代碼:

    // 跳轉至詳情頁
    goDetail(row) {
      // console.log(row)
      window.open(`https://xxxx.xxxx.com/?id=${row.id}`, '_self')
    },

解決方案:

    // 跳轉至詳情頁
    goDetail(row) {
      // console.log(row)
      var hasGoDetail // 記錄是否已跳轉過頁面。若不執行這一步,則在跳轉詳情頁后返回原頁面就不能再次跳轉新的詳情頁
      if (hasGoDetail) { // 已經跳轉過
        hasGoDetail.close() // 關閉
      }
      hasGoDetail = window.open(`https://xxxx.xxxx.com/?id=${row.id}`, '_self')
    },

原文鏈接:https://blog.csdn.net/vvv3171071/article/details/121513564

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新