2016-09-20 345 views
0

如何在瀏覽器URL更改時捕獲?JQuery URL更改監聽器

我有以下情形: 在我的頁面中,當用戶在iframe內單擊時,iframe內容發生更改,並且瀏覽器中的URL通過js更改。 iframe之外的其他東西都不會改變(甚至不包括iframe src)。

有可能檢查URL是否被更改?

這不是工作:

jQuery(window).on("hashchange",() => { 

} 

編輯:我上的使用我們的內部事件總線的URL更改後這個問題,但我仍然認爲,這是你的使用已經內置事件更好的解決方案。 ..

+0

您是否可以訪問更改瀏覽器URL的'javascript'?你能描述一下URL的變化嗎?什麼是原始網址,什麼是更改的網址? – guest271314

+0

可能的重複http://stackoverflow.com/questions/2073086/javascript-how-to-intercept-window-location-change – guest271314

+0

這不是重複的帖子。我不想創建任何URL檢查器,只有當我沒有更多的選項。 – bazsoja

回答

0

我不確定,因爲iframe正在更改url,但您可以嘗試使用onbeforeunload事件:當窗口即將卸載資源時它應該會觸發。

window.onbeforeunload = function(e) { 
    // ... 
}; 

請記住hashchange只應在散列更改(不是完整的URL)時才起作用。

+0

沒錯,那就是問題所在。另一個問題可能是我們使用CORS在頁面和Iframe之間進行通信。 – bazsoja

+0

這不適用... – bazsoja

0

訪問者點擊某個按鈕時設置會話變量。