我正在製作一個Firefox插件,用於記錄用戶在瀏覽器中打開網頁的時間。如何在更改多標籤瀏覽器中的標籤之前捕獲舊URL?
我能夠通過添加進度監聽趕在瀏覽器中每一個新的網頁打開的鏈接(無論是在新的標籤或已經打開了一個):
addProgressListener(myAddon_urlBarListener,
Components.interfaces.nsIWebProgress.NOTIFY_ALL);
然後我用onLocationChange
得到標籤的新網址。
問題是我不知道標籤的舊URL能夠停止計時器並計算該網頁的持續時間。現在我只能夠計算時間,如果我關閉網頁的標籤,因爲我能夠捕捉關閉標籤頁事件以及關閉頁面之前的鏈接。
我需要一種方法來趕上老網頁的URL,如果我在同一個選項卡中打開一個新的URL,這需要即使不止一個標籤頁都在瀏覽器中打開工作。順便說一句,我不使用jQuery,但如果它是必需的,我會的。
如果你可以看到所有當前打開的選項卡,爲什麼不能比當前打開的選項卡的標籤,你現在已經得救了嗎?不在列表中的那個是被改變的那個。 –
@sudowned:我用了弗拉基米爾的建議,對我來說工作得很好,thanx分享你的想法 – BlackSigma