gpt4 book ai didi

javascript - 为什么 JQuery 不触发添加的事件监听器?

转载 作者:行者123 更新时间:2023-11-28 02:30:41 24 4
gpt4 key购买 nike

我已经认识到,该事件处理程序添加了 addEventListener ,不受$.trigger。这个问题的特殊原因是,我有几个自己创建的 html 元素,它们在不使用外部库(仅纯 js)的情况下实现了一些逻辑。现在,在我的主项目中,我想使用这些控件,此外我还有外部库,例如 jQuery。现在,例如我想触发更改事件(记住...事件是通过 element.addEventListener("event", function) 添加的)和 $(element).trigger("change “)

结果:什么也没发生

仅当我使用如下代码时才会触发该事件:

event = document.createEvent("HTMLEvents");
event.initEvent("change", true, true);
event.eventName = 'change';
element.dispatchEvent(event);

另一方面...使用 jQuery 添加事件处理程序,也由自定义创建的事件触发。

现在神奇的问题:为什么?

您可以在下面的 jsfiddle 中找到一个小示例。 http://jsfiddle.net/UYyXv/3/

最佳答案

我有一个explanation from the jquery forums

jQuery events are a level higher than the native events. Trigger fakes a jQuery event. If you want to fake a native event you need to call it as you wrote in the question.

Simple answer, don’t use native events.

JΛ̊KE

关于javascript - 为什么 JQuery 不触发添加的事件监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14232448/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com