2012-04-12 153 views
0

我搞砸了铬扩展,并试图注入一些JS到页面中。 (我想,例如,使主页面弹出一个框说什么)。这是我的JS文件:如何在chrome扩展中使用chrome.tabs.executeScript?

//Function to be called: 
function setText() { 
    var text = document.getElementById("titleinput").value; 
    var myCode="alert('Test');"; 
    chrome.tabs.executeScript(null, {code:myCode}); 
} 

//Makes it run above code when a button is pressed: 
document.addEventListener('DOMContentLoaded', function() { 
    document.querySelector('button').addEventListener('click', setText); 
}); 

这是我的清单文件:

{ 
    "name": "Tester", 
    "version": "1.0", 
    "manifest_version": 2, 
    "description": "description", 
    "browser_action": { 
    "default_icon": "icon.png", 
    "default_popup": "popup.html" 
    }, 
    "permissions": [ 
    "tabs", "http://*/*", "https://*/*" 
    ] 
} 

我知道setText()被称为(我试过直接将警报在那里),但由于某种原因主要页面没有做出一个弹出窗口说'测试'就像它应该。我究竟做错了什么?

回答

2

确保您在网站上运行它,而不是chrome://extensions。您不能将脚本注入chrome://*页面。如果它仍然无效,请使用popup debugger查找错误。

+0

弹出调试器帮助,得到它修复:P – 2012-08-07 03:30:08