JavaScript 自定义事件、触发事件
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 自定义事件、触发事件相关推荐
- Unity 碰撞事件 触发事件
Unity 碰撞事件 触发事件 碰撞和被碰撞的物体都需要加有 Collider 碰撞组件 两个物体至少有一个带有刚体 触发器需要在Collider组件中勾选Trigger属性 1.触发器事件 //触发 ...
- JavaScript原生自动触发事件
在有些情况下,我们需要程序逻辑自动触发元素的事件,例如js提供了click(), form提供了reset(),submit()等方法!在jquery中提供了trigger()方法帮助我们自动触发事件 ...
- JavaScript中的触发事件
这两天在敲订餐管理系统的界面的时候,才感觉到自己在前端这里才疏学浅,什么都没有整理过,因为页面的效果想使用JavaScript来展示,却发现不知道JS的代码是如何被驱动的,因此才有了这篇博客,帮助大家 ...
- android按钮双击事件触发事件吗,Button.PerformClick()不会触发点击事件,如果该按钮不可见在android...
我希望我的btnAppShare按钮被点击,即使按钮是不可见的,我已经wriiten此代码后按钮1点击侦听器是可见的基本上,我希望完全执行button1的setOnClickListener事件后,我 ...
- JavaScript 键盘的按键事件
一 键盘的按键事件 keydown 按键按下 keyup 按键抬起 keypress 按键按下 1, 键盘事件 默认只有可以获取焦点的标签支持 一般只是input标签 textarea documen ...
- Javascript自定义事件功能与用法实例分析
原文地址:https://www.jb51.net/article/127776.htm 本文实例讲述了javascript自定义事件功能与用法.分享给大家供大家参考,具体如下: 概述 自定义事件很难 ...
- JavaScript自定义事件
很多DOM对象都有原生的事件支持,向div就有click.mouseover等事件,事件机制可以为类的设计带来很大的灵活性,相信.net程序员深有体会.随着web技术发展,使用JavaScript自定 ...
- JavaScript自定义事件--高级技巧
观察者模式 事件是JavaScript和浏览器交互的主要途径.事件是一种叫做观察者的设计模式,这是一种创建松散耦合代码的技术. 观察者模式:由两类对象组成,主体和观察者,主体负责发布事件,观察者通过订 ...
- javascript自定义事件原理
我们都知道,鼠标点击click,触屏的touch等事件,可以触发相应的事件处理程序,也可以为这些事件添加事件处理程序,实际开发过程中可供我们使用的事件很少,click.doubleclick,mous ...
最新文章
- mysql导入存储过程报错_mysql导入建立存储过程或函数报错This function has none of DETERMINISTIC, NO SQL解决办法...
- 驱动框架6——linux内核的gpiolib学习
- php issign为false,支付宝接口集成及错误排除
- Linux—shell脚本化工具模板
- android olhttp 缓存,android okhttp 缓存设置
- Android 获取手机总内存和可用内存等信息
- vuex mutations_Vuex 的基本知识总结
- flash cs4中3D特性之PerspectiveProjection属性设置
- 数学问题(二):质数、质因子
- 忘记linux虚拟机密码怎么办
- 温度采集系统(开源 原理图、PCB文件+源码+云平台+app端设计方案)
- 如何下载redhat enterprise版本
- 计算机上u盘变成快捷方式,打开u盘文件变成快捷方式怎么办?
- 这应该是我见过最干净的影视资源搜索站点
- .NET内存性能分析宝典
- 浅议信息系统控制在企业中的应用(lunwen+开题报告)
- 3D游戏编程与设计作业一
- 第一个popcap 程序
- 播音发声基本功,在家练发声的方法步骤
- 2021年中国原油加工行业供需回顾及发展趋势分析[图]
热门文章
- java计算机毕业设计积分权益商城源码+mysql数据库+系统+lw文档+部署
- php 函数 全局变量,PHP函数内访问全局变量
- git --- 删除本地分支和远程分支操作
- 阿里无人超市的大胆猜测:其实无人超市只是个过渡
- AT32F437制作Bootloader然后实现Http OTA升级
- C语言保留小数相关问题
- linux pmap命令,linux中 pmap 命令详解
- VR全景市场拓展技巧之“拓客宝典”
- python中bytearray函数_python函数之bytearray用法详解
- 学习实战篇---通用卷积神经网络加速器的verilog实现(一)---axi-lite实验