javascript——有多少库制作了自己的事件监听器和事件,比如传单库?

chy5wohz  于 2021-09-23  发布在  Java
关注(0)|答案(1)|浏览(266)

在许多库中,如传单,它们有自己的事件,如“调整大小”或“缩放”事件,您可以在此处看到它们,它们也有自己的事件对象,具有自定义属性,这些事件对象没有dom事件的属性,如气泡、取消气泡等,它们使用on()方法来侦听这些事件。
我想知道,他们是如何做到的,他们是如何创建自己的事件、事件对象和自己的事件侦听器的,我听说过一种叫做“事件发射器”的东西,但它是nodejs的一部分,它只在浏览器之外工作,所以我想知道他们是如何让它们在浏览器中工作的。
我猜他们创建了自己的事件发射器,并在他们的库中使用它们,因为在互联网上有许多手工构建的事件发射器可以在浏览器中工作(我不确定这是不是真的),所以我猜仍然可以在broswer中使用类似于“事件发射器”的东西。
那么真相是什么呢?他们是如何使这些事件和事件侦听器像他们正在使用的那样的 Event Emitter 在浏览器中。非常感谢你们阅读这个问题,我不确定这是不是一个好问题,但希望我能从你们那里知道答案,非常感谢!

pzfprimi

pzfprimi1#

您可以将自己的自定义事件作为dom api的一部分进行调度。

// add an appropriate event listener
obj.addEventListener("cat", function(e) { process(e.detail) });

// create and dispatch the event
var event = new CustomEvent("cat", {
  detail: {
    hazcheeseburger: true
  }
});
obj.dispatchEvent(event);

相关问题