0

我試圖做一個Chrome擴展程序的Zendesk,看來,他們的應用程序是建立與灰燼。我使用$(document).ready,但只有在刷新頁面時纔會真正觸發,否則它根本不會觸發。我如何才能在我的Chrome擴展程序中監聽Zendesk中的頁面更改?如何檢測國外Ember應用程序的路線更改?

我環顧四周,才發現答案,這將有助於只有當它是我自己的灰燼應用程序。另外,它不是一個hashchange。

回答

0

這聽起來像你想實現的beforeunload事件的偵聽器:https://developer.mozilla.org/en-US/docs/Web/Events/beforeunload

但是,而不是設置一條確認信息,實現不管它是什麼,你想什麼時候做導航的變化。如果你添加一條確認信息,它會彈出一個對話框,詢問你是否真的想離開,但是聽起來不像你想要的那樣。聽起來你只是想監視導航事件已經發生,但我可能會誤解。

0

這裏有一些想法:

  • 也許你可以劫持history對象的方法。
  • 或者,如果你有機會獲得特權鉻的API,你可以嘗試使用network.onNavigated。我不知道它是否在歷史pushState上調用,但更好的檢查。

您也可以看看Ember inspector code,它提供了關於當前正在運行的應用程序的餘燼有很多見解,包括哪條路線是當前活動所以你會發現的工具,你在那裏需要什麼。

我認爲它的工作原理是注射一些代碼到網頁中,然後通過communicating with it窗口消息。注入的代碼然後執行請求的分析並返回結果。

相關問題