在我的(javascript,jQuery)代码中,我使用了两种触发事件的方法
jQuery('body').trigger('crazy-trigger-event');
jQuery("body").get(0).dispatchEvent(new CustomEvent("crazy-dispatch-event"));
Run Code Online (Sandbox Code Playgroud)
在这里的片段:
http://jsfiddle.net/jts9jhbt/3/
我已经使用jQuery .on()和DOM .addEventListener()方法注册了自定义事件.
然后我使用jQuery .trigger()和DOM .dispatchEvent()方法触发事件.
似乎使用.on()注册的侦听器接收两种方式触发的事件.
但是,使用.addEventListener()注册的侦听器只接收使用.dispatchEvent()触发的事件.
我的用例是我混合使用遗留代码和jQuery代码,使用.dispatchEvent()似乎最安全,因此它与两者兼容.
那么我可以对代码进行一些更改,以便使用.addEventListener()注册的侦听器可以从.trigger()接收事件吗?