3 回答

TA貢獻1943條經(jīng)驗 獲得超7個贊
使用隱藏的形式。當您重新加載或單擊“后退”按鈕返回頁面時,表單數(shù)據(jù)通常會保存在瀏覽器中。以下內(nèi)容會出現(xiàn)在您的頁面中(可能在底部附近):
<form name="ignore_me">
<input type="hidden" id="page_is_dirty" name="page_is_dirty" value="0" />
</form>
在您的JavaScript中,您將需要以下內(nèi)容:
var dirty_bit = document.getElementById('page_is_dirty');
if (dirty_bit.value == '1') window.location.reload();
function mark_page_dirty() {
dirty_bit.value = '1';
}
嗅探表單的js必須在html完全解析后執(zhí)行,但是如果用戶延遲是一個嚴重問題,則可以將表單和js放在頁面頂部(js秒)。

TA貢獻1876條經(jīng)驗 獲得超7個贊
這是解決這個老問題的非常簡單的現(xiàn)代解決方案。
if (window.performance && window.performance.navigation.type == window.performance.navigation.TYPE_BACK_FORWARD) {
alert('Got here using the browser "Back" or "Forward" button.');
}
目前所有主要瀏覽器都支持window.performance。
添加回答
舉報