我需要一種方法來爲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. 如何攔截javascript中的innerHTML更改?
- 2. C# - 攔截屬性更改
- 3. 攔截剪貼板更改
- 4. 攔截SetChildIndex的值更改
- 5. 攔截註冊表更改
- 6. AJAX攔截JavaScript
- 7. 如何攔截
- 8. 如何爲ILogger攔截攔截器
- 9. JavaScript攔截呼叫
- 10. JavaScript的AJAX攔截
- 11. 攔截javascript調用
- 12. 攔截並更改TableAdapter上的SQL
- 13. 創建DLL來攔截更改標題
- 14. 攔截JTable的選擇更改事件
- 15. 更改現有$ http請求攔截
- 16. Struts2攔截器更改操作
- 17. C#攔截/更改/重定向方法
- 18. 更新/攔截HttpContext.Current.Request.QueryString
- 19. 攔截和更改網站的JavaScript使用的Greasemonkey
- 20. 我該如何改進JavaScript中的碰撞攔截系統?
- 21. 使用javascript window.location更改端口
- 22. 在JavaScript中跟蹤對window.location的更改
- 23. 攔截器不攔截
- 24. java攔截器不攔截
- 25. 如何從攔截器中更改JAAS上下文?
- 26. 如何攔截函數調用並用pytest更改參數?
- 27. 如何攔截chrome腳本中的pjax頁面更改?
- 28. 如何更改HTTP攔截器中的內容類型
- 29. MPMoviePlayerViewController - 如何攔截或更改完成按鈕的功能
- 30. 如何攔截和更改http請求與c#
這是否適用於單頁面應用程序?在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