DOM3的自定义事件
时间:2023-04-02 23:06:33
HTML
DOM3也定义了自定义事件,DOM原生不会触发,其目的是让开发者创建自己的事件。要创建的自定义事件可以通过createEvent("CustomEvent");创建返回的对象有一个initCustomEvent()方法,它接收以下四个参数。类型:字符串,触发事件类型,自定义。例如“keyDown”、“selectedChange”;bubble(布尔值):指示事件是否应该冒泡;cancelable(布尔值):表示事件是否可以取消;detail(object):任意值,保存在事件对象的detail属性中;下面是一个例子:当点击按钮时,一秒后会触发一个id为target的元素的自定义事件myEvent。这个自定义事件冒泡并依次通过target、wrap和document。实例在这里:https://codepen.io/zhaojianxi...
点击 vare=document.createEvent("CustomEvent"); e.initCustomEvent("myEvent",true,false,"helloworld!");varbtn=document.getElementById('btn');btn.addEventListener('click',function(){setTimeout(function(){target.dispatchEvent(e)},1000)})varwrap=document.getElementById('wrap');vartarget=document.getElementById('target');target.addEventListener('myEvent',function(e){console.log('target',e)})wrap.addEventListener('myEvent',function(e){console.log('wrap',e)})window.addEventListener('myEvent',function(e){console.log('window',e)})