簡體   English   中英

在瀏覽器上觸發事件並強制刷新或使用新的URL重新加載頁面

[英]Trigger event on browser back and force refresh or reload the page with new url

這是我的網址:DOMAIN-NAME /#city = 13&pc = 13&car = 18.26 + 2.97

現在,當用戶單擊瀏覽器后,查詢字符串參數將被一個一個地刪除,例如:

第一個瀏覽器返回:DOMAIN-NAME /#city = 13&pc = 13&car = 18.26

第二個瀏覽器返回:DOMAIN-NAME /#city = 13&pc = 13

第三個瀏覽器:DOMAIN-NAME /#city = 13

問題在於,在瀏覽器上,頁面未重新加載。

我讀到有關hashchange,pushstate的信息,但無法找到在瀏覽器上重新加載頁面的正確方法?

我試過這個:var hash;

$(window).on('hashchange', function () {
    if (hash != window.location.hash) {
         alert('hash change called');
        //window.location.reload(true);
    }
    hash = window.location.hash;
});

當我刷新頁面時,這會反復重新加載我的頁面。

您需要的是“ windows.location”,它可以讓您檢查當前URL並分配一個新URL或在這種情況下強制重新加載。 JavaScript窗口位置

您可以執行以下操作:

function reload(){
    window.location.assign(window.location.href);
}

當您檢測到導航時...可能是帶有HTML onbeforeunload事件屬性或類似的內容...

<body onbeforeunload="return reload()">

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM