2 回答
TA贡献1789条经验 获得超10个赞
称呼
toggleOption1();
后
document.getElementById("option1").addEventListener("click", toggleOption1);
编辑
您应该使用 DOMContentsLoaded 事件之类的东西来确保加载数据对象模型
JavaScript
window.addEventListener('DOMContentLoaded', (event) => {
document.getElementById("option1").addEventListener("click", toggleOption1);
toggleOption1();
});
function toggleOption1() {
var option1 = document.getElementById("option1");
// if option1 is checked, run first script
if (option1.checked === true) {
console.log("checked");
// chrome.tabs.executeScript({
// file: 'optionEnabled.js'
// });
// otherwise, run script 2
} else {
console.log("not checked");
// chrome.tabs.executeScript({
// file: 'optionDisabled.js'
// });
}
}
TA贡献1853条经验 获得超6个赞
由于您知道默认情况下复选框已选中,因此您可以简单地从后台脚本而不是弹出脚本执行代码 chrome.tabs.executeScript 。
加载扩展后,就会加载后台脚本。后台脚本对于所有选项卡都有一个实例。
更新: 加载扩展时只会执行一次。因此,用户在弹出窗口之后使用复选框是没有问题的
添加回答
举报