JavaScript--自定义事件Event
在开发过程中,js原生事件不足以满意开发需求,需要开发者自定义事件。
一、Event
Event()构造函数创建一个新的Event。
event = new Event(typeArg,eventInit);
typeArg
事件名称。
eventInit
这是一个对象,包含以下字段:
例
var _event = new Event('eventName', {"bubbles":true, "cancelable":false}); //dispatchEvent派发事件 document.dispatchEvent(_event); myDom.dispatchEvent(evt);
二、事件逻辑
自定义的事件可以绑定到DOM元素上定义事件处理逻辑,然后通过dispatchEvent派发事件。
例
var _event = new Event('look', {"bubbles":true, "cancelable":false}); document.addEventListener('look', function(){ console.log('lootEvent_document'); }); myDom.addEventListener('look', function(){ console.log('lootEvent_myDom'); }); myDom.dispatchEvent(_event); //lootEvent_myDom lootEvent_document document.dispatchEvent(_event); //lootEvent_document
因为我们定义的事件是冒泡的,所以在myDom上触发look事件会冒泡到document上去。