这是我第一次编写chrome扩展程序。
我需要使用chrome扩展程序加载外部脚本到当前页面。 现在我正在使用调试器模式(f12)加载脚本,并且在控制台选项卡中我正在运行getScript(“http://www.mypath.com/ ....”)并且我希望通过单击来传递所有这些镀铬扩展。
到目前为止我所做的(通过阅读一些tutrials)是manifest.json文件
{
"manifest_version": 2,
"name": "Getting started example",
"description": "first extention",
"version": "1.0",
"content_scripts": [
{
"matches": ["http://*/*"],
"js": ["jquery-1.12.4.min.js", "test.js"]
}
],
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"permissions": [ "tabs", "<all_urls>", "http://www.mypath.com*", "http://*/*", "https://*/*", "http://*.google.com/" ],
"background": {
"page": "background.html"
},
"content_security_policy": "script-src 'self' http://www.mypath.com; object-src 'self'"
}
popup.html文件
<html>
<head>
</head>
<body>
<button id="btn" name="btn">click here</button>
<script src="jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="test.js"></script>
</body>
</html>
test.js文件
document.getElementById("btn").addEventListener("click", getUrl);
function getUrl() {
jQuery.getScript("http://www.mypath.com/.....");
}
看来它不起作用, 有人可以对它有所了解吗?
谢谢
答案 0 :(得分:0)
试试这个:
test.js
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.tabs.executeScript(null,
{file:"http://www.mypath.com/....."});
});
或
function getUrl() {
chrome.tabs.executeScript(null,
{file:"http://www.mypath.com/....."});
}
的manifest.json
"permissions": [
"tabs", "http://www.mypath.com"
],
参考:https://developer.chrome.com/extensions/tabs#method-executeScript