2009-12-17 27 views
2

我正在開發Firefox的擴展。該擴展將事件監聽器添加到「加載」事件中的「appcontent」元素。如何確定事件來自標籤的主文檔

如何確定事件來自標籤的主文檔?目前來自網頁不同元素的所有事件(例如圖像,甚至是其中的一個擴展文檔)。我想排除所有的情況下,包括框架,iframe等,只有在地址欄輸入的網址。

回答

0

你能比較event.srcElement.ownerDocument的主頁文件嗎?您也可以使用.location.href屬性。快速和骯髒的例子:

//- on event 
var doc = event.srcElement.ownerDocument; 
if (doc && (doc.location.href == currentUrl)) 
    runFunction(); 

https://developer.mozilla.org/En/DOM/Node.ownerDocument

1

只是爲那些給出問題本身的人提供了一個答案,並且可能通過搜索找到問題的人。

任務是解決與線

if (Event.originalTarget == content.document) 

爲我工作。

在某些新聞組中找到

+0

請注意,這會將您限制爲當前可見的頁面。即如果後臺頁面加載完成,則不會通過此檢查。 – Nickolay 2009-12-28 19:43:05

+0

我更喜歡https://forums.addons.mozilla.org/viewtopic.php?f=11&t=124的方法#1,儘管作者聲稱它並不總是有效。最好的解決方案是挑選一個正在運行的相對流行的擴展程序,並瞭解它是如何工作的。 – Nickolay 2009-12-28 20:05:21

相關問題