3 回答

TA貢獻1798條經(jīng)驗 獲得超3個贊
“ popstate”事件僅在您之前推送內(nèi)容時有效。因此,您必須執(zhí)行以下操作:
jQuery(document).ready(function($) {
if (window.history && window.history.pushState) {
window.history.pushState('forward', null, './#forward');
$(window).on('popstate', function() {
alert('Back button was pressed.');
});
}
});
為了使瀏覽器向后兼容,我建議:history.js

TA貢獻1752條經(jīng)驗 獲得超4個贊
有很多方法可以檢測用戶是否單擊了“后退”按鈕。但是,一切都取決于您的需求。嘗試瀏覽下面的鏈接,它們對您有幫助。
檢測用戶是否按下了當(dāng)前頁面上的“返回”按鈕:
有沒有一種方法可以使用Jquery檢測跨瀏覽器被按下的后退按鈕
檢測瀏覽器中的后退按鈕單擊
在按下上一頁(“前進”)上的“返回”按鈕后,檢測是否訪問了當(dāng)前頁面:
單擊“后退”按鈕時是否存在跨瀏覽器的onload事件?
在瀏覽器后退按鈕上觸發(fā)事件單擊

TA貢獻1772條經(jīng)驗 獲得超6個贊
發(fā)現(xiàn)這可以跨瀏覽器和移動back_button_override.js很好地工作。
(為野生動物園5.0添加了一個計時器)
// managage back button click (and backspace)
var count = 0; // needed for safari
window.onload = function () {
if (typeof history.pushState === "function") {
history.pushState("back", null, null);
window.onpopstate = function () {
history.pushState('back', null, null);
if(count == 1){window.location = 'your url';}
};
}
}
setTimeout(function(){count = 1;},200);
添加回答
舉報