javascript - 添加动态创建的 web 元素的事件监听器
问题描述
我正在编写一个 chrome 扩展,它动态地确定单击的元素 xpath。它使用 insertAdjacentHTML 函数(如下所示)创建一个文本区域 Web 元素,并将单击的元素 xpath 放置到它。
document.body.insertAdjacentHTML('beforeend',this.html);
//this.html is string version of text area web element
document.addEventListener('click', this.getData, true);
上面的代码获取元素的 xpath 并将其放置到创建的文本区域。我还想计算并显示与文本区域中的 xpath 匹配的元素数量(用户可以编辑文本区域)为此,我尝试为文本区域元素添加另一个事件侦听器,如下所示:
var element= document.getElementById("inspector-text-area")
element.addEventListener('change',function(e){
console.log("event fired")
...
});
运行扩展后,单击元素的 xpath 被放置到创建的文本区域 Web 元素,但是当我编辑文本区域时,不会触发下一个添加的事件侦听器的函数。我做错了什么?谢谢..
解决方案
它与事件捕获和事件冒泡有关
推荐阅读
- javascript - blueimp jQueryFileUpload file[] - 如何获取图像的宽度和高度以显示或限制它们?
- c# - TempData[] 初始化 ASP>NET Core 框架的单元测试用例
- ios - 如何更改CODialog的样式
- php - 如何正确比较php中相同格式的日期
- python - Python - 遗传算法变异功能不起作用
- reactjs - 如何处理reactJS中的复选框选中状态
- ios - 对多个项目使用单个 xcode 文件
- linq - LINQ搜索有序列表并附加出现数
- reactjs - 反应表单组件中的输入文本不允许文本输入
- javascript - 以角度更改特定页面上的导航栏背景颜色