addeventlistener事件第三个参数_JavaScript 事件与事件处理机制
当用户与网页发生交互时,可以使用事件监听器来绑定事件,在事件发生时执行相应的代码。
事件分为:
1.浏览器事件:window.onload,window.scroll等。
2.http请求事件:ajax、websocket等。
3.用户操作事件:鼠标按下或松开、回车、页面滚动等。
4.计时器事件:setInterval,setTimeout。
二、JavaScript事件处理机制是什么?
事件处理一共有三个阶段,包括捕获、目标阶段、冒泡三个阶段,传播顺序为:
捕获:从document逐级向下传播到目标元素。由于IE低版本浏览器不支持,所以很少使用事件捕获;
目标阶段:事件到达目标节点时,就到了目标阶段,事件在目标节点上被触发
冒泡:从下至上,从目标触发的元素逐级向上传播,直到window对象;
如图:
三、事件监听
对事件的监听常见的三种方法:
1.直接对DOM元素事件进行绑定:
"btn" onclick="go()" >
2.在JavaScript中对DOM元素进行事件绑定:
document.getElementById('btn').onclick=function(){};
3.利用监听函数addEventListener("事件名",callback,false):
第三个参数:true捕获阶段调用事件处理方法;false冒泡阶段调用事件处理方法。
document.getElementById('btn').addEventListener("click",function(){console.log('事件触发');});//解除事件,如果要移除事件句柄,addEventListener() 的执行函数必须使用外部函数。document.getElementById('btn').removeEventListener("click",callback);
注意:IE8不支持addEventListener和removeEventListener方法
实现了两个类似的方法:
attachEvent("事件名",callback);//事件处理程序名称
detachEvent("事件名",callback);//事件处理程序方法
四、阻止默认事件。
如果是直接对DOM进行绑定的事件,或者在JavaScript中对DOM进行绑定的事件,则直接return false;即可。
document.getElementById('btn').onclick=function(){ console.log('触发事件'); return false;};
如果是使用监听函数,则需要用到event.preventDefault();
function callback(e){ console.log('事件触发'); //阻止默认事件 if(e.preventDefault){ e.preventDefault(); }else{ e.returnValue = false;//IE8- } //默认冒泡事件 if(e.stopPropagation){ e.stopPropagation(); }else{ e.cancelBubble = true;//IE8- }}document.getElementById('btn').addEventListener("click",callback);
addeventlistener事件第三个参数_JavaScript 事件与事件处理机制相关推荐
- addeventlistener事件第三个参数_简析JavaScript 事件绑定、事件冒泡、事件捕获和事件执行顺序...
这篇文章主要介绍了javaScript 事件绑定.事件冒泡.事件捕获和事件执行顺序整理总结的相关资料 (一)事件绑定的几种方式 javascript给DOM绑定事件处理函数总的来说有2种方式:在htm ...
- addeventlistener事件第三个参数 passive_JS DOM 事件流、事件冒泡
当一个HTML元素触发一个事件时,该事件会在元素结点与根结点之间的路径传播.传播按顺序分为三个阶段:捕获阶段.目标阶段.冒泡阶段,这个传播过程就是 DOM 事件流. 事件冒泡就是当一个HTML元素出发 ...
- addEventListener 的第三个参数capture、once、passive
做网页canvas手势绘制的时候,手机端页面会有抖动. 解决方案在手机端加个锁定的按钮.并用addEventListener 的passive属性来控制页面的滑动. var lockflag = fa ...
- addEventListener的第三个参数
大家都知道 addEventListener 可以给对象添加事件监听.百度,w3school 对它的解释,有三个参数,语法格式如下: el.addEventListener(type, listene ...
- JavaScript 事件模型 事件处理机制
这篇文章对于了解Javascript的事件处理机制非常好,将它全文转载于此,以备不时之需. 什么是事件? 事件(Event)是JavaScript应用跳动的心脏 ,也是把所有东西粘在一起的胶水.当我们 ...
- addListener添加事件监听器,第三个参数useCapture (Boolean) 的作用
addEventListener 有三个参数:第一个参数表示事件名称(不含 on,如 "click"):第二个参数表示要接收事件处理的函数:第三个参数为 useCapture,本文 ...
- addEventListener()参数及事件汇总
addEventListener() 方法用于给元素添加监听事件,同一个元素可以重复添加,并且不会覆盖之前相同事件,用removeEventListener() 方法来移除事件. 使用方法: elem ...
- addEventListener事件监听传递参数
Flash as3 addEventListener事件监听传递参数 var sayHello:String = "how are you"; btn1.addEventListe ...
- Javascript事件模型系列(一)事件及事件的三种模型
一.开篇 在学习javascript之初,就在网上看过不少介绍javascript事件的文章,毕竟是js基础中的基础,文章零零散散有不少,但遗憾的是没有看到比较全面的系列文章.犹记得去年这个时候,参加 ...
最新文章
- php pthread 实例,php 真正的多线程 pthread
- vant图标怎么显示不出来_U盘插进电脑但不显示怎么解决
- 云计算公网质量评测方法和最佳实践
- vim 的配置文件 #vim ~/.vimrc
- 【PyTorch 】静态图与动态图机制
- Eclipse中如何更改工作空间(之前一直不知道,几天终于知道了!)。
- dell笔记本c语言系统,戴尔dell笔记本电脑U盘重装系统win7教程图解
- 机器学习傻瓜的深入研究
- 内核同步与互斥的总结
- 动态规划实战4-leetcode 5.Longest Palindromic Substring
- VS2019 OpenCL安装和快速入门
- Linux上mysql忘记密码重置密码
- ai人工智能开发_面向开发人员的十大人工智能(AI)工具
- Ubuntu18.04 安装花生壳并使用
- Window 打开新窗口的几种方式 window.location.href、window.open、window.showModalDialog
- SQL 修改表的常用命令
- Field eFaultPriorityService in com.ect.emes.admin.restapi.AlarmRestApi required a bean of type 解决方法
- DDL和DML的含义
- 转载:【SQL练习】经典SQL练习题
- 【精】LintCode领扣算法问题答案:1029. 寻找最便宜的航行旅途(最多经过k个中转站)
热门文章
- xaml 的 intellisense失效的解决办法
- 206.12.15随笔--最近内心的一些想法
- ios10 申请拍照权限_iOS10配置申请权限
- 服务器实现_Linux C Http 文件服务器实现(含源码)
- ros云服务器_减少运维工作量,如何通过 ROS 轻松实现资源编排新方式
- 计算机音乐绅士教程,教你学唱薛之谦的《绅士》,这个技巧很实用值得收藏!...
- Linux下安装Nexus-3.15私服
- JavaScript权威指南笔记
- 进程间通信-字符串的传递
- javascript 停止事件冒泡以及阻止默认事件冒泡