代码还没有自12 2015年作为Chrome扩展停止工作发生变化。我不知道为什么。
清单具有:
"web_accessible_resources": [ "script.js" ]
内容脚本具有:
var readDiv = $("div[id*=fls_readheader]");
$("table[id*='objects_tabs_detail']").filter(function(index){ return $("thead:first-of-type > tr:first-of-type > th:first-of-type > div:first-of-type", this).html() === "Field Name";}).find(readDiv).append("<br /><div style='margin-top:3px;'><input type='checkbox' name='Check All Read' onclick='clickAllRead(this);' /></div>");
var s = document.createElement('script');
s.src = chrome.extension.getURL('script.js');
s.onload = function() {
this.parentNode.removeChild(this);
};
(document.head||document.documentElement).appendChild(s);
当我点击复选框我得到的消息:
未捕获的ReferenceError:clickAllRead不是在限定HTMLInputElement.onclick
有什么想法为什么会损坏以及如何解决?
script.js包含:
function clickAllRead(cb) {
if(cb.checked) {
var cbs = $("input:checkbox:enabled[id*=fls_read_ck]");
$("table[id*='objects_tabs_detail']").filter(function(index){ return $("thead:first-of-type > tr:first-of-type > th:first-of-type > div:first-of-type", this).html() === "Field Name";}).find(cbs).prop('checked', true);
} else {
var cbs = $("input:checkbox:enabled");
$("table[id*='objects_tabs_detail']").filter(function(index){ return $("thead:first-of-type > tr:first-of-type > th:first-of-type > div:first-of-type", this).html() === "Field Name";}).find(cbs).prop('checked', false);
}
}
如果我将script.js添加到扩展程序清单的“ content_scripts”中,则扩展程序将按预期工作。我只是想知道为什么它打破了。