ユーザーがブラウザーで Web ページを開いたままにしておく時間をログに記録する Firefox アドオンを作成しています。
プログレスリスナーを追加することで、ブラウザーで開いているすべての新しい Web ページ (新しいタブまたは既に開いているタブの両方) のリンクをキャッチできました。
addProgressListener(myAddon_urlBarListener,
Components.interfaces.nsIWebProgress.NOTIFY_ALL);
次にonLocationChange
、タブの新しい URL を取得するために使用します。
問題は、タイマーを停止し、その Web ページの期間を計算できるタブの古い URL がわからないことです。現在、タブを閉じるイベントとページ内のリンクを閉じる前にキャッチできるため、Webページのタブを閉じた場合にのみ時間を計算できます。
同じタブで新しい URL を開いた場合に古い Web ページの URL をキャッチする方法が必要です。これは、ブラウザーで複数のタブが開かれている場合でも機能する必要があります。ところで、私は jQuery を使用していませんが、必要に応じて使用します。