Firefox ブラウザーでユーザーのアクティビティを監視したいのですが、現在のタブの location.href を知る必要があります。これにはcontent.location.hrefを使用しますが、この location.href が変更されたときにコードが必要です。どのイベントをリッスンする必要があり、ブラウザー内のどのオブジェクトであるかを知る必要があります。
私のコードの一部:
window.addEventListener("load", function load(event){
window.removeEventListener("load", load, false);
myExtension.init();
},false);
var myExtension = {
init: function() {
var appcontent = document.getElementById("appcontent");
appcontent.addEventListener("blur", myExtension.onPageBlur, true);
appcontent.addEventListener("load", myExtension.onPageLoad, true);
appcontent.addEventListener("focus", myExtension.onPageFocus, true);
},
onPageBlur: function () {
// Doing something when there is no focus
},
onPageFocus: function(aEvent) {
// Doing something when we get focus
},
onPageLoad: function(aEvent) {
// Doing something on page load
}
};
このコードは機能しますが、ブラウザーのロケーション バーをクリックすると、少し望ましくない動作が発生し、blur イベントが発生し、location.href が変更された場合 (focus および load イベントが発生)、location.href の操作が困難になります。 、ユーザー アクティビティのデータを保存するときに最適化するために、いくつかの手直しが必要です
コードに次の動作が必要です。
- タブ選択で動作
- タブの location.href の変更に対応
- ブラウザの複数のウィンドウで動作します
前もって感謝します。