javascript - 将点击事件添加到 Chrome 扩展程序中的按钮
问题描述
我想将点击事件添加到一个按钮元素,我通过运行 executeScript 函数在 chrome.tabs.onUpdated 事件函数中动态添加它。
chrome.tabs.onUpdated.addListener(() => {
chrome.tabs.executeScript(null, {file: "execute.js" });
})
我在执行的 execute.js 文件中使用此代码向动态添加的按钮元素添加了一个单击事件函数,但它不起作用;
var btnComment=document.createElement('button');
btnComment.addEventListener('click',function(){
console.log('btnComment worked')
});
我在它请求 background.js 文件中使用 background.html 页面。我该如何实现这个功能?
解决方案
不幸的是,由于缺乏关于您的程序外观的上下文,我无法给出 100% 肯定的答案。但是,我认为问题在于您需要首先使用 DOM 专门选择元素。
尝试
document.getElementById('button').addEventListener('click',function(){
console.log('btnComment worked')
});
有关文档对象模型的更多信息可以在这里找到:https ://www.w3schools.com/js/js_htmldom.asp
编辑:拼写
推荐阅读
- java - 当我使用套接字通过本地网络传输文件时,如何防止文件损坏?
- python - 从 Selenium 中的容器中单击每个 div
- javascript - 如何从javascript中的字符串中删除单词数组?
- css - 如何使用 CSS 在叠加层中获得 100% 的宽度
- django - 如何使用 AWS 免费托管 Web 应用程序(Docker、Nginx、Angular、Django)?
- service-worker - Serviceworker 注册 - 奇怪的问题
- c# - 拼写检查不工作 WPF 应用程序
- android - 致命异常:DatabaseException:无法将 java.lang.String 类型的对象转换为 com.accentra.retrivedatabase.User 类型
- .net - 我可以在多个 Visual Studio IDE 中打开同一个项目以同时工作吗
- python - 删除条件中数据框的公共部分。熊猫