首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

JavaScript 阻止瀏覽器後退按鈕的最佳實踐:location.replace

     編輯:程式設計綜合問答

場景

頁面從 a.jsp 動態跳轉到 b.jsp,需禁止用戶通過瀏覽器左上角後退按鈕返回 a.jsp。

解決方案

使用 location.replace(url) 替代 location.href = url 或 location.assign(url)。

原理對比

方法歷史棧行為後退按鈕
location.href / assign新增記錄可後退
location.replace替換當前記錄不可後退

代碼示例

// a.jsp 中跳轉到 b.jsp
if (condition) {
    location.replace('b.jsp'); // 瀏覽器歷史無 a.jsp 記錄
}

補充

  • 無法直接禁用瀏覽器原生後退按鈕(安全限制)。
  • 若需在頁面內攔截(如表單未保存提示),可用 history.pushState + popstate 事件,但無法覆蓋瀏覽器 UI 按鈕。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved