2014-05-11 75 views
0

如何在向頁面注入html後加載腳本?注入html代碼後加載內容腳本

注入點擊事件中的html代碼。 內容腳本在點擊事件(其中html被注入)之前被加載

該腳本包含偵聽器添加的節點。 因此,當單擊注入節點中的按鈕時,腳本中的evnt無法觸發,因爲它們在注入html之前加載。

有什麼替代品可以使用?

和任何我可以在注入html後加載一些腳本的方式?

"content_scripts": [ 
    { 
     "matches": ["https://*.facebook.com/*"], 
     "css": ["css/chat_style.css"], 
     "js": ["jquery-latest.min.js","js/socket.io.js","contentscript.js","js/chat_script.js"], 
     "run_at": "document_end" 
    } 
    ] 

contentscript.js注入頁面上的一些單擊事件的HTML的Facebook頁面和chat_script.js包含點擊收聽由contentscript.js

注入節點問題是chat_script得到在注入html之前加載。

+0

更多信息添加相關代碼到你的問題。 – Xan

+0

您可以將HTML注入代碼添加到問題中嗎? – Xan

回答

-2

您可以以編程方式注入腳本,以便在html注入之前不會加載它。

這裏有一個例如:

chrome.tabs.executeScript(null, {file: "chat_script.js"}); 

注入HTML在此之後的contentscript.js添加。在鉻文檔

https://developer.chrome.com/extensions/content_scripts#pi

+1

這是一個不完整的答案:重要的部分是檢測何時注入代碼。 – Xan

+0

更新了答案。它不應該很難,因爲html是以編程方式注入的。 – Amila

+0

現在答案是_plain wrong_。首先,內容腳本不能使用'chrome.tabs' API。其次,這完全忽略了HTML被異步注入(或者首先沒有問題)的事實。 – Xan