DOM事件学习笔记
2016-06-18 22:54
197 查看
事件流
事件冒泡:IE的事件流,即事件最开始由最具体的元素接受,然后逐级向上传播至最不具体的元素。事件捕获:与事件冒泡相反。
stopPropagation()阻止事件冒泡。
例如:
<div id="btn1">
<input type="button" value="按钮" id="btn2">
</div>
如果在input和div元素都有onclick 事件,触发input的onclick事件会同时触发div的onclick事件。
事件处理程序
DOM2级事件处理程序定义了两个方法--用于处理指定和删除事件处理程序的操作:
addEventListener()添加事件监听程序
removeEventListener()移除事件监听程序
三个参数设置;事件名称,处理方法(函数),布尔值--false:表示在冒泡阶段调用事件处理程序(可以最大限度的兼容浏览器),一般设为false;true表示在捕获阶段调用事件处理程序
btn3.addEventListener('click',showMes,false);
注意:
1、若事件名称有on,则需去掉on。onclick --> click,onmouseover --> mouseover等等;
2、false 最大限度兼容所有浏览器--事件冒泡流。
3.通过addEventListener添加的事件只能通过removeEventListener来删除。--参数要与添加事件时相同
btn3.removeEventListener(参数);//参数必须和btn.addEventListener的参数一致,删除事件监听
DOM2级事件处理程序可以给一个事件绑定多个函数,事件触发的时候会按照绑定顺序执行各个函数。如下所示:
btn3.addEventListener('click',showMes,false);
btn3.addEventListener('click',showMes,function(){alert(this.value);},false);
DOM0级事件则后面添加的同一事件类型会覆盖前面的;
缺点:DOM2级事件处理程序,ie不支持,ie有专用的事件处理程序
相关文章推荐
- for循环里面的递归调用探讨
- 第二章 java基础(基本数据类型介绍)
- gdb调试程序3
- Linux C编程---指针数组简析(二维数组、多级指针)
- 希尔排序理解
- Java 引用jar包
- 第二章 java基础(数据类型简介)
- 使用github搭建网站
- 设计模式整理_工厂模式
- 使用github上搭建网站
- 附加题作业
- 附加作业
- 开源中国(四)代码片段
- START WITH CONNECT BY PRIOR子句实现递归查询
- Hibernate深入学习(一):实体映射文件中的package,auto-import,dynamic-insert,dynamic-update用法
- 第二章 java基础(标识符介绍)
- OpenStack TroubleShooting技巧
- LeetCode-41.First Missing Positive
- c语言学习笔记30之函数参数
- linux的文件系统