我在下面有这个代码,直到上周工作,但现在当我再次执行时,这不起作用。
基于this question并经过我测试,使用chrome.tabs.onUpdated.addListener
事件,工作正常,但我在 msgBox.js 文件中有一些字符串会导致相对于编码的错误(UTF-8 / ANSI)因此, msgBox.js 文件中的所有脚本都必须使用chrome.tabs.executeScript
执行。
msgBox.js
function msg()
{
alert("hello!");
}
msg();
event.js
chrome.webRequest.onCompleted.addListener(
function onWindowLoad() {
chrome.tabs.executeScript(null, {
file: "msgBox.js"
}, function() {
});
}
,
{
urls: ["<all_urls>"],
types: ["main_frame"]
},
["responseHeaders"]
);
的manifest.json
{
"background": {
// "page": "popup.html"
"scripts": ["event.js"]
},
"description": "Media Player for Flash",
"manifest_version": 2,
"name": "Media Player",
"icons": {
"128" : "picture/flash128.png" ,
"48" : "picture/flash48.png"
},
"web_accessible_resources": [
"event.js"
],
"content_scripts": [
{
"matches": ["<all_urls>", "*://*/*", "http://*/*", "https://*/*"],
"js": ["event.js"],
"run_at": "document_end",
"all_frames": true
}
],
"permissions": [ "tabs", "background", "activeTab", "<all_urls>", "webNavigation", "webRequest", "http://*/*", "https://*/*", "*://*/*" ],
"version": "1.0"
}
有什么不对?
欢迎任何帮助。
答案 0 :(得分:-1)
根据https://developer.chrome.com/extensions/tabs#method-executeScript
null不是&#34; executeScript&#34;中对象的有效选项,请尝试使用&#34; string&#34;在它的位置。至少在尝试重现和修复
时,它对我有用编辑:虽然这并不能解释为什么它之前有效但已停止