js 返回上一頁並重新整理頁面

2021-08-18 22:01:00 字數 1188 閱讀 1786

正常情況下我們通過history.back()或者history.go(-1)返回上一級頁面的時候,是不會重新整理頁面的。這種不重新整理頁面包含兩種情況:

在 android 或者 pc 瀏覽器中看到的頁面有重新整理的效果,其實不是這樣的,這個時候的所有的資源都是從快取中載入來的。我們通過瀏覽器除錯工具可以看到from disk cache或者from memory cache

window.addeventlistener('pageshow', function

(event)

});

但是這種方式在 android 和 pc 的瀏覽器中沒有效果,經過嘗試會發現 android 和 pc 的瀏覽器中每一次進入 pageshow事件後,event.persisted永遠都是返回 false。

不管是在任何情況下,都會監聽到 pageshow事件。既然能進入這個函式,那就得想辦法在這個函式裡判斷是否需要重新整理頁面。可以通過快取的方式localstoragesessionstoragecookie

要在頁面中判斷是否需要重新整理,那就得在從下一級返回過來的時候,往 cache中存入需要重新整理。

sessionstorage.setitem('refresh', 'true');

history.go(-1);

然後在上一級也頁面獲取並判斷

if(sessionstorage.getitem('refresh') === 'true')
window.addeventlistener('pageshow', function

(event) else

} sessionstorage.removeitem('refresh');

});

注意:

1. 在下一級頁面返回的時候,要標記需要重新整理頁面(set)

2. 在判斷完成後,一定要刪除之前的儲存(remove)避免出現無限過載的情況

h5 返回上一頁並且重新整理頁面

window.history.go 1 和 window.history.back 1 都用了,安卓會重新整理,ios系統不重新整理 ios會讀取瀏覽器快取 下面用了一種比較low的方法,但是好歹實現了。localstorage.setitem homehref window.location.hr...

js返回上一頁並重新整理思路

在網上找了很多辦法,比如window.history.go 1 window.history.go 0 試了下根本沒用 不知道是不是我 寫錯了 想著在上乙個頁面寫乙個關閉頁面並重新整理的方法,然後在當前頁面呼叫上乙個頁面的方法,但是這個只有iframe巢狀頁面才能實現,最後無奈,只能在localst...

mui返回上一頁並重新整理

需求 從a頁面跳到b頁面,然後從b頁面返回a頁面並重新整理a頁面 傳值到a頁面 1.mui.fire 2.mui.evaljs mui.fire 方法可以觸發目標視窗的自定義事件 mui.fire target,event 例如b頁面 var parent plus.webview.currentw...