JavaScript--自定义事件Event

Posted 世界之魂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript--自定义事件Event相关的知识,希望对你有一定的参考价值。

在开发过程中,js原生事件不足以满意开发需求,需要开发者自定义事件。

一、Event

Event()构造函数创建一个新的Event。

event = new Event(typeArg,eventInit);

typeArg

  事件名称。

eventInit

  这是一个对象,包含以下字段:

  • bubbles:(可选)Boolean指示事件是否冒泡。默认是false

  • cancelable:(可选)a Boolean表示是否可以取消该事件。默认是false

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上去。

 

以上是关于JavaScript--自定义事件Event的主要内容,如果未能解决你的问题,请参考以下文章

自定义事件

JavaScript自定义事件 - createEvent()initEvent()和dispachEvent()

webkit iOS 5上的自定义Javascript事件不起作用

JavaScript自定义事件监听

Webkit iOS 5上的自定义Javascript事件不起作用

JavaScript Event Loop 机制详解与 Vue.js 中实践应用