Javascript Chrome扩展-附加代码的事件侦听器
我正在编写一个chrome扩展,试图在现有页面上创建一个GUI。该GUI由一个输入文本字段和一个回复按钮组成。我通过创建一个HTML字符串并将其附加到网站来创建GUI 我想添加一个事件侦听器,这样当按下reply按钮时,它将触发一个函数,这样我就可以将输入文本字段中的数据发送到我的服务器。据我所知,一旦代码被添加到页面中,它就无法访问script.js,因此无法访问事件侦听器。还有别的选择吗Javascript Chrome扩展-附加代码的事件侦听器,javascript,javascript-events,google-chrome-extension,Javascript,Javascript Events,Google Chrome Extension,我正在编写一个chrome扩展,试图在现有页面上创建一个GUI。该GUI由一个输入文本字段和一个回复按钮组成。我通过创建一个HTML字符串并将其附加到网站来创建GUI 我想添加一个事件侦听器,这样当按下reply按钮时,它将触发一个函数,这样我就可以将输入文本字段中的数据发送到我的服务器。据我所知,一旦代码被添加到页面中,它就无法访问script.js,因此无法访问事件侦听器。还有别的选择吗 my GUI的图像:您正在向其中注入代码的页面是从内容脚本中导出的沙盒。但是,您的内容脚本可以完全访问页
my GUI的图像:您正在向其中注入代码的页面是从内容脚本中导出的沙盒。但是,您的内容脚本可以完全访问页面DOM,包括事件。这意味着您可以向附加的元素添加事件侦听器。您必须以不引人注目的方式添加它们,以便内容脚本随后可以向后台页面发送消息: 内容脚本:
var html = document.createElement('div');
html.innerHTML = '<input id="clickMe" type="button" value="Click Me" />';
document.body.appendChild(html);
document.getElementById('clickMe').addEventListener('click', function() {
// do stuff
});
var html=document.createElement('div');
html.innerHTML='';
document.body.appendChild(html);
document.getElementById('clickMe')。addEventListener('click',function(){
//做事
});
太好了。非常感谢。午饭回来后我会试试:)如果我还有什么问题,我会告诉你的。