我有一个普通的 Javascript 系统触发 change
下拉菜单上的事件:
const event = new Event('change');
select.dispatchEvent(event);
它可以完美地通过 addEventListener()
处理该事件或$('select').on()
但如果.on()
则不起作用函数设置为目标动态元素:
$(document).on('change', 'select', function() {
console.log('should');
});
我错过了什么?
最佳答案
默认情况下,构造的事件不会在 DOM 树中冒泡。如果您想要这样,您需要明确提出要求:
const event = new Event("change", { bubbles: true });
如果事件不冒泡,则不会达到文档
级别,并且不会调用委托(delegate)处理程序。
关于javascript - 为什么 jQuery .on() 不处理 javascript 动态创建的事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66674065/