2016-02-15 52 views
1

我正在處理我的第一個Chrome擴展,並試圖創建一個彈出擴展,它根據結果創建一個網頁並將一些項目添加到列表中。有點像一個願望清單。Chrome擴展程序彈出內容腳本中打開的事件偵聽器

我想聽我的內容腳本中的彈出式打開的事件,這樣我就可以重新抓取更新數據的網頁(這就是說,如果用戶點擊網頁中的某些內容和DOM發生更改)。我使用chrome.runtime.onMessagechrome.tabs.sendMessage在內容和彈出腳本之間進行通信。

這裏我的問題是:是否有任何事件可以在內容腳本中聽到,並知道彈出窗口何時打開?或者更好,是否有基於選項卡DOM更改更新彈出窗口的最佳做法?

乾杯。

+0

你也直接在html中加載腳本文件 – Sandeep

回答

1

在您的彈出頁面,包括以下JS

window.onload = function() { 
    //popup was opened, do what you want 
}; 
0

基礎上docs。用「MutationObserver()」,它提供了一個網頁或一個擴展的機制得到通知即將進行的更改DOM。

代碼如下片段是如何實例化DOM的突變觀察員:

new MutationObserver(
function callback 
); 
1

使用,你可以運行一個腳本選項卡允許擴展的彈出窗口已經打開時:

chrome.browserAction.onClicked.addListener(function(tab) { 
    // Run the following code when the popup is opened 
}); 

只要記住,上面的代碼必須在後臺腳本中運行。

相關問題