1. 自定义事件的基本步骤

  • 创建事件.
    var event = document.createEvent('Event');

  • 初始化事件【参数:事件类型、事件是否在DOM中冒泡、是否可以用 preventDefault() 方法取消默认事件】
    event.initEvent('click', true, false);

  • 设置事件监听.(e.target 即监听事件目标元素)
    elem.addEventListener('click', (e) =>{}, false);

  • 触发事件监听
    elem.dispatchEvent(event);

createEvent() 和 initEvent() 这两个方法已从Web标准中删除,虽然仍有些浏览器在支持它们。建议使用Event()构造函数提替代它们。

2. 通过Event()构造函数创建并初始化事件

  • 创建并初始化事件(支持冒泡且不能被取消的look事件)。
    var ev = new Event("look", {"bubbles":true, "cancelable":false});
  • 设置事件监听.(e.target 即监听事件目标元素)
    myDiv.addEventListener('ev', (e) =>{}, false);
  • 触发事件。(派发自定义事件给指定的target)。
    myDiv.dispatchEvent(ev);

Event(eventName, eventInit) 的参数1是事件名称。 参数2是可选的,有以下3个可选属性。

参数 说明
bubbles 可选,Boolean类型,默认值为 false,表示该事件是否冒泡。
cancelable 可选,Boolean类型,默认值为 false, 表示该事件能否被取消。
composed 可选,Boolean类型,默认值为 false,指示事件是否会在影子DOM根节点之外触发侦听器。

JavaScript 自定义事件、触发事件相关推荐

  1. Unity 碰撞事件 触发事件

    Unity 碰撞事件 触发事件 碰撞和被碰撞的物体都需要加有 Collider 碰撞组件 两个物体至少有一个带有刚体 触发器需要在Collider组件中勾选Trigger属性 1.触发器事件 //触发 ...

  2. JavaScript原生自动触发事件

    在有些情况下,我们需要程序逻辑自动触发元素的事件,例如js提供了click(), form提供了reset(),submit()等方法!在jquery中提供了trigger()方法帮助我们自动触发事件 ...

  3. JavaScript中的触发事件

    这两天在敲订餐管理系统的界面的时候,才感觉到自己在前端这里才疏学浅,什么都没有整理过,因为页面的效果想使用JavaScript来展示,却发现不知道JS的代码是如何被驱动的,因此才有了这篇博客,帮助大家 ...

  4. android按钮双击事件触发事件吗,Button.PerformClick()不会触发点击事件,如果该按钮不可见在android...

    我希望我的btnAppShare按钮被点击,即使按钮是不可见的,我已经wriiten此代码后按钮1点击侦听器是可见的基本上,我希望完全执行button1的setOnClickListener事件后,我 ...

  5. JavaScript 键盘的按键事件

    一 键盘的按键事件 keydown 按键按下 keyup 按键抬起 keypress 按键按下 1, 键盘事件 默认只有可以获取焦点的标签支持 一般只是input标签 textarea documen ...

  6. Javascript自定义事件功能与用法实例分析

    原文地址:https://www.jb51.net/article/127776.htm 本文实例讲述了javascript自定义事件功能与用法.分享给大家供大家参考,具体如下: 概述 自定义事件很难 ...

  7. JavaScript自定义事件

    很多DOM对象都有原生的事件支持,向div就有click.mouseover等事件,事件机制可以为类的设计带来很大的灵活性,相信.net程序员深有体会.随着web技术发展,使用JavaScript自定 ...

  8. JavaScript自定义事件--高级技巧

    观察者模式 事件是JavaScript和浏览器交互的主要途径.事件是一种叫做观察者的设计模式,这是一种创建松散耦合代码的技术. 观察者模式:由两类对象组成,主体和观察者,主体负责发布事件,观察者通过订 ...

  9. javascript自定义事件原理

    我们都知道,鼠标点击click,触屏的touch等事件,可以触发相应的事件处理程序,也可以为这些事件添加事件处理程序,实际开发过程中可供我们使用的事件很少,click.doubleclick,mous ...

最新文章

  1. mysql导入存储过程报错_mysql导入建立存储过程或函数报错This function has none of DETERMINISTIC, NO SQL解决办法...
  2. 驱动框架6——linux内核的gpiolib学习
  3. php issign为false,支付宝接口集成及错误排除
  4. Linux—shell脚本化工具模板
  5. android olhttp 缓存,android okhttp 缓存设置
  6. Android 获取手机总内存和可用内存等信息
  7. vuex mutations_Vuex 的基本知识总结
  8. flash cs4中3D特性之PerspectiveProjection属性设置
  9. 数学问题(二):质数、质因子
  10. 忘记linux虚拟机密码怎么办
  11. 温度采集系统(开源 原理图、PCB文件+源码+云平台+app端设计方案)
  12. 如何下载redhat enterprise版本
  13. 计算机上u盘变成快捷方式,打开u盘文件变成快捷方式怎么办?
  14. 这应该是我见过最干净的影视资源搜索站点
  15. .NET内存性能分析宝典
  16. 浅议信息系统控制在企业中的应用(lunwen+开题报告)
  17. 3D游戏编程与设计作业一
  18. 第一个popcap 程序
  19. 播音发声基本功,在家练发声的方法步骤
  20. 2021年中国原油加工行业供需回顾及发展趋势分析[图]

热门文章

  1. java计算机毕业设计积分权益商城源码+mysql数据库+系统+lw文档+部署
  2. php 函数 全局变量,PHP函数内访问全局变量
  3. git --- 删除本地分支和远程分支操作
  4. 阿里无人超市的大胆猜测:其实无人超市只是个过渡
  5. AT32F437制作Bootloader然后实现Http OTA升级
  6. C语言保留小数相关问题
  7. linux pmap命令,linux中 pmap 命令详解
  8. VR全景市场拓展技巧之“拓客宝典”
  9. python中bytearray函数_python函数之bytearray用法详解
  10. 学习实战篇---通用卷积神经网络加速器的verilog实现(一)---axi-lite实验