自定义DOM事件函数封装
非原生DOM触发,个性化定制的自定义事件。
- currentTarget(DOM对象):要触发事件的元素节点。
- type(字符串):触发的事件类型,例如"keydown"。
- bubbles(布尔值):表示事件是否应该冒泡。
- cancelable(布尔值):表示事件是否可以取消。
- detail(对象):任意值,保存在 event 对象的 detail 属性中。
1 function customEvent (currentTarget, type, bubbles, cancelable, detail) {
2 /* 自定义响应事件 */
3 //IE9+
4 if (document.implementation.hasFeature("CustomEvents", "3.0")) {
5 bubbles = (bubbles === undefined) ? true : bubbles; // 默认事件冒泡
6 cancelable = (cancelable === undefined) ? true : cancelable; // 默认事件可以取消
7 detail = detail || {}; //这里可以是事件中包含的信息、数据
8 var e = document.createEvent("CustomEvent");
9 e.initCustomEvent(type, bubbles, cancelable, detail);
10 currentTarget.dispatchEvent(e); // 触发事件
11 }
12 else console.log("该环境不支持自定义事件!");
13 }
自定义DOM事件函数封装的更多相关文章
- javascript将DOM事件处理程序封装为event.js 出现的低级错误记录
将 DOM 0级事件处理程序和DOM2级事件处理程序 IE事件处理程序封装为eventUtil对象,达到跨浏览器的效果.代码如下: var eventUtil = { // 添加事件句柄 addEve ...
- [前端][自定义DOM事件]不使用setTimeout实现双击事件或n击事件
使用setTimeout实现双击事件 例如,这样: let div = document.getElementById("div"); doubleClick(div, funct ...
- DOM事件里封装方法eventUtil
var eventUtil={ //添加句柄 addHandler:function (element,type,handler) { //element相当于btn2,type此时用的是click类 ...
- 深入理解DOM事件机制系列第四篇——事件模拟
× 目录 [1]引入 [2]模拟机制 [3]自定义事件 前面的话 事件是网页中某个特别的瞬间,经常由用户操作或通过其他浏览器功能来触发.但实际上,也可以使用javascript在任意时刻来触发特定的事 ...
- jquery事件函数和原生事件绑定函数中return false的区别
一直听说jquery中事件函数返回false,相当于调用了event.preventDefault()和event.stopPropagation()两个方法,今天就想看看dom中0级.1级.2级事件 ...
- MIT 2012分布式课程基础源码解析-事件管理封装
这部分的内容主要包括Epoll/select的封装,在封装好相应函数后,再使用一个类来管理相应事件,实现的文件为pollmgr.{h, cc}. 事件函数封装 可看到pollmgr.h文件下定一个了一 ...
- 如何优雅的封装一个DOM事件库
1.DOM0级事件和DOM2级事件 DOM 0级事件是元素内的一个私有属性:div.onclick = function () {},对一个私有属性赋值(在该事件上绑定一个方法).由此可知DOM 0级 ...
- Angular4.x Event (DOM事件和自定义事件)
Angular组件和DOM元素通过事件与外部进行通信,两者中的事件绑定语法是相同的-(eventName)="expression": <button (click)=&qu ...
- javascript中事件总结&通用的事件侦听器函数封装&事件委托
前言: JAVASCRIPT与HTML之间的交互是通过事件来实现的.事件,就是文档或浏览器窗口中发生的一些特定交互瞬间.可以使用侦听器( 或处理程序 )来预定事件,以便事件发生时执行相应的代码.这种在 ...
- DOM事件: DOM事件级别、DOM事件流、DOM事件模型、DOM事件捕获过程、自定义事件
前端面试中只要问到事件,就肯定会有DOM事件:如果回答出来了,就会一直向下延申,其实这些东西都很简单,但我第一次被问到的时候,也是懵的: DOM事件级别: DOM0 element.onclick = ...
随机推荐
- 1326. 灌溉花园的最少水龙头数目 (Hard)
问题描述 1326. 灌溉花园的最少水龙头数目 (Hard) 在 x 轴上有一个一维的花园.花园长度为 n,从点 0 开始,到点 n 结束. 花园里总共有 n + 1 个水龙头,分别位于 [0, 1, ...
- Linux系统备份与还原——restore还原命令
之前有讲到Linux下的备份工具dump,有备份自然就有还原,而还原备份文件采用的命令则是restore restore命令格式: restore [模式] [选项] 模式: 有四种模式且不能混用,只 ...
- 2022-04-12内部群每日三题-清辉PMP
1.一个项目的成本绩效指数(CPI)为1.2,且关键路径上的一个可交付成果落后于进度. 如果项目经理将项目回正轨,项目会发生什么情况? A.活动将并行执行 B.范围将被修改 C.成本和风险将会增加 D ...
- 2022-3-21内部群每日三题-清辉PMP
1.Sprint的速度低于预期,敏捷团队成员应该怎么做? A.限制团队成员和客户之间的沟通,以防止不必要的焦虑. B.管理沟通,以重置相应团队成员和干系人的期望. C.管理几名团队成员和客户之间的沟通 ...
- Unity中的批处理优化与GPU Instancing【转】
我们都希望能够在场景中投入一百万个物体,不幸的是,渲染和管理大量的游戏对象是以牺牲CPU和GPU性能为代价的,因为有太多Draw Call的问题,最后我们必须找到其他的解决方案.在本文中,我们将讨论两 ...
- Appium + Python xpath定位
本文转自:https://www.cnblogs.com/yoyoketang/p/9174749.html 基本属性定位 以淘宝app为例,定位左上角扫一扫按钮 1.可以通过text文本定位到 // ...
- host头攻击
一.问题源起 HTTP1.1规范中在增加了HOST头信息,用于存储服务端与客户端的路由信息. 例如: Request的Header里就有一个标名请求,它是用来记录服务端网站域名的. 如果前端或者后台正 ...
- 【python】python3.7与3.9共存,两个3版本同时存在(平时用vscode敲代码)pip复制
1.按照安装python及环境配置 - 人间寒梅 - 博客园 (cnblogs.com),将3.9装好. 2.在官网下载3.7的对应文件 3.下载后运行,并自定义下载且选中添加到path.,自己为py ...
- 全局监控Promise错误
一.问题引入 Promise 在前端中的使用已经非常普遍了,但是许多开发者或许习惯了链式调用却忘了捕获 Promise 的错误了. 例如: function forgetCatchError () { ...
- 【Android异常】关于静态注册BroadcastReceiver接收不到自定义广播的问题
Android 8.0以上需要setComponent()来指定包名和类名,第1个参数是指接收广播类的包名,第2个参数是指接收广播类的完整类名.静态广播1.先使用Android Studio创建一个广 ...