2011-01-12 37 views
1

我這樣做,注入iframe中當前網頁的擴展,使用內容的腳本:如何將iframe面板注入Google Chrome擴展程序並在iframe內添加點擊事件?

$('body').append('<iframe src="' + chrome.extension.getURL('panel.html') + '" frameborder="0" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; z-index: 2147483647; position: fixed; width: 100%; left: 0px; bottom: 0px; height: 100px; display: block; visibility: visible; outline-style: none; outline-width: 0px; outline-color: rgb(0, 0, 0); " id="GE_Panel"></iframe>'); 

我可以在網頁瀏覽的iframe,但我不知道如何添加點擊事件的元素,該iframe中...

回答

1

你必須等待,直到iframe中加載,然後訪問的元素在它的內部:

$('<iframe ... />').load(function() { 
    var doc = $(this).contents(); 
    doc.find('#yourLink').click(...); 
}).appendTo('body'); 

參考:.contents

不知道Chrome瀏覽器處理的擴展,但它可能是,你將有一個same-origin policy問題。

0

如果您可以控制panel.html,只需將處理click事件的js放在panel.html中即可。

相關問題