在开发过程中,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上去。

最新文章

  1. SDWebImage源码解读 之 NSData+ImageContentType
  2. aapt命令介绍及常用命令实践
  3. __new__
  4. 【深入浅出.Net IL】1.一个For循环引发的IL
  5. ionic 添加地图定位功能
  6. 《SQL Server企业级平台管理实践》读书笔记——SQL Server如何设置自动增长和自动收缩项
  7. 阿里云OSS NET SDK 引用示范程序
  8. CSS设置技巧
  9. linux 私房菜 CH7 Linux 档案与目录管理
  10. 【PHP】震惊,一张图详解递归函数!!!!
  11. DATAGUARD常用管理命令
  12. 【python】lambda创建匿名函数
  13. Hive metastore源码阅读(二)
  14. openstack第六章:dashboard
  15. C语言典型编程2
  16. 扒光IT界江湖骗子巴蜀万明的底裤
  17. iOS 11开发教程(二十)iOS11应用视图美化按钮之设置按钮的状态
  18. 如何解决Android帧动画出现的内存溢出
  19. 第二章 Servlet基础
  20. 《Java Concurrency》读书笔记,Java并发编程实践基础

热门文章

  1. 在论坛中出现的比较难的sql问题:22(触发器专题3)
  2. linux环境,hidraw设备自动加载时默认权限的设置方法
  3. js 遍历树的层级关系的实现
  4. Python-pptx库的运用
  5. react-native 沉浸式状态栏
  6. MySql 学习之 一条更新sql的执行过程
  7. jenkins中的流水线( pipeline)的理解(未完)
  8. Django session默认配置
  9. spice在桌面虚拟化中的应用系列之一(spice简介,性能优化等)
  10. Python字典取键、值对