[英]How to determine the event came from the main document of the tab
我正在為Firefox開發擴展程序。 該擴展將事件偵聽器添加到“加載”事件的“ appcontent”元素中。
如何確定事件來自選項卡的主文檔? 此刻,來自頁面不同元素的所有事件都來了(例如圖像,甚至觸發了擴展文檔,甚至擴展文檔)。 我想排除所有情況,包括框架,iframe等,僅排除在位置欄中鍵入的url。
對於那些指出問題本身並可能通過搜索找到問題的人來說,這只是一個答案。
用線解決任務
if (Event.originalTarget == content.document)
為我工作。
在某些新聞組中找到
您可以比較event.srcElement.ownerDocument
主頁文件嗎? 您也可以使用.location.href屬性。 快速而骯臟的例子:
//- on event
var doc = event.srcElement.ownerDocument;
if (doc && (doc.location.href == currentUrl))
runFunction();
看一下event
對象的originalTarget
和explicitOriginalTarget
屬性。 https://developer.mozilla.org/en/DOM/event.originalTarget
像這樣使用它:
if(event.explicitOriginalTarget == theHookedObject) {
// do your stuff
}
theHookedObject
是您已將偵聽器附加到的對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.