我需要一種方法來爲window.location的每個賦值附加一些預處理。有沒有辦法做到這一點。我基本上需要序列化一些信息,這將在新的位置使用。Javascript:如何攔截window.location更改
27
A
回答
24
可以使用beforeunload
事件來觸發你的代碼運行導航之前...如果你需要更具體的(例如,僅在啓動代碼導航),在東西n我建議您將代碼更改爲window.location
作爲單獨的函數,併爲您的自定義邏輯添加一個鉤子。
14
你可能想看看本納德爾的帖子關於這樣做,可能你在後談判尋找什麼
Binding Events to non DOM objects with jQuery
他的榜樣關於創建一個事件處理程序觸發更改事件時window.location
改變
+7
實際上,解決方案似乎是'setInterval'並定期檢查。 – 2016-05-12 15:45:54
相關問題
- 1. 攔截剪貼板更改
- 2. C# - 攔截屬性更改
- 3. 攔截SetChildIndex的值更改
- 4. AJAX攔截JavaScript
- 5. 如何攔截
- 6. 如何爲ILogger攔截攔截器
- 7. 攔截javascript調用
- 8. 更改現有$ http請求攔截
- 9. 攔截JTable的選擇更改事件
- 10. 更新/攔截HttpContext.Current.Request.QueryString
- 11. 使用javascript window.location更改端口
- 12. 在JavaScript中跟蹤對window.location的更改
- 13. 我該如何改進JavaScript中的碰撞攔截系統?
- 14. MPMoviePlayerViewController - 如何攔截或更改完成按鈕的功能
- 15. 如何攔截和更改http請求與c#
- 16. 如何從攔截器中更改JAAS上下文?
- 17. 攔截器不攔截
- 18. 攔截JavaScript卸載事件
- 19. 攔截javascript中的函數
- 20. 代理攔截Javascript SDK(all.js)
- 21. 運行前攔截Javascript
- 22. 攔截的Javascript HTMLImageElement構造
- 23. 攔截JavaScript訪問DOM
- 24. 如何自定義登陸頁面(「被Netgear攔截」 - 更改爲「被房主攔截」等)
- 25. 更新父親攔截
- 26. 如何攔截@RequestBody綁定
- 27. 如何實際攔截res.render
- 28. 如何攔截來電pjsip
- 29. 如何攔截iPhone旋轉
- 30. Selenium:如何攔截請求
這是否適用於單頁面應用程序?在Angular和其他SPA框架中,URL更改但頁面不卸載/重新加載,因此我不知道此事件是否觸發。 – 2015-08-07 15:25:54
通常框架提供自定義事件以獲取位置更改 – Nobita 2016-03-10 14:08:56
@CarlG,在單頁面應用程序中,如果URL散列已更改,則可以使用'onhashchange'來註冊處理程序。 – shuangwhywhy 2016-09-08 08:07:04