我在学习js中的事件(如:click,keyPress...),但是在网上看到很多关于“DOM事件”的讨论。那么我的问题是,js事件和DOM事件是相同的吗?如果不是,它们有什么区别?
我在学习js中的事件(如:click,keyPress...),但是在网上看到很多关于“DOM事件”的讨论。那么我的问题是,js事件和DOM事件是相同的吗?如果不是,它们有什么区别?
DOM事件在DOM发生变化或与用户交互时触发,它们是由JavaScript事件引发的。 请阅读所有的事件: http://www.w3schools.com/jsref/dom_obj_event.asp
除了DOM事件外,您可以在JavaScript中定义自己的事件对象,并使用“dispatchEvent”方法来触发该事件。例如:
var event = new Event('build');
// Listen for the event.
elem.addEventListener('build', function (e) { ... }, false);
// Dispatch the event.
elem.dispatchEvent(event);
DOM事件是DOM中的元素或对象监听的任何事件。例如,按钮单击、文本输入键按下、鼠标悬停等。通常情况下,DOM事件是由某种用户交互触发的(鼠标事件、键盘事件、表单提交等)。但也可以通过编程方式触发DOM事件。
还有其他不被视为DOM事件的事件,例如:
onreadystatechange
)MessageEvent
)storage
)Dom事件:这个事件在DOM组件上执行,以执行某些操作,如(事件/属性等)
Js事件:这些事件将在DOM对象的内容上执行操作,如(验证(条件),表达式,对Dom对象的方法等)
事件是一种系统,当执行某些操作时会记录并可以被处理。例如点击按钮、悬停在某个框上、选择某段文本,甚至是在某个频道接收新消息。
在js中,DOM事件是标准事件,对应于直接在DOM元素上执行的操作,例如用户单击某个东西时,将触发点击事件(直接对应于用户单击按钮),并调用附加到该元素的任何事件处理程序。 以下是事件列表: https://en.wikipedia.org/wiki/DOM_events 这些事件由浏览器识别和支持,并且可以本地触发。
许多js库通过这些DOM事件构建自己的事件系统。它们包装监听的元素,当事件被触发时,它们将事件传播到处理函数。
它们还可以通过让用户调用特定函数来支持DOM或任何其他对象上的自定义事件,例如
obj.on("receive", function(){alert("Hello")})
//Later
obj.trigger("receive")
因此,无名函数(显示警报)将在触发接收事件时被调用。这里发生的是on函数将保持附加到对象的处理程序列表,而触发函数将调用每个处理程序并使用任何必需的数据调用它们。