一个事件监听器可以阻止另一个事件发生吗?

时间:2015-05-14 05:40:13

标签: javascript jquery events javascript-events event-handling

我正在撰写Chrome扩展程序,将内容脚本注入页面。该脚本在页面上的 select 元素中添加了一个事件监听器,这样只要有人从下拉列表中选择一个新值,就可以执行例程。

我尝试使用“普通”JS方法添加此事件侦听器:

document.getElementById('mySelect').addEventListener('change', doSomething);

...和jQuery方法:

$('#mySelect').change(doSomething);

似乎都没有用;事件永远不会发生。

通过使用Chrome的开发人员工具检查元素,我发现该元素已经有一个事件监听器,由页面上已经运行的另一个脚本创建。我知道这个监听器正在运行,因为生成的脚本会将一些数据记录到控制台。我想知道这个现有的听众是否能以某种方式“吸收”改变事件并阻止它到达我自己的听众。

奇怪的是,当我打开元素的monitorEvents时,它不会记录任何类型的事件(甚至不应该受到影响的事情,例如鼠标悬停)。

有什么想法吗?

0 个答案:

没有答案