DOM事件探秘篇


Posted in Javascript onFebruary 15, 2017

1.事件流

时间流--- 描述的是从页面中接受事件的顺序。

(1)事件冒泡流。

事件最开始由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传播至最不具体的那个节点(文档)。

(2)事件捕获流。

不太具体的节点应该更早接受到事件,而最具体的节点最后接受到事件。

2.JS事件探索

1.HTML事件处理程序 -- 直接写在html标签里面的js触发语句。

2.DOM0级事件处理程序。

把一个函数赋值给一个事件的处理程序属性,用的比较多的方法,简单,跨浏览器的优势。

3.DOM2级事件处理程序。

(1)用于处理制定和删除事件处理程序的操作。

addEventListener(处理的事件名,事件处理程序的函数,布尔值) removeEventListner()。

4.IE事件处理程序。

attachEvent(事件处理程序的名称,事件处理程序的函数) detachEvent()

不需要添加第三个参数:IE8以及更早的浏览器版本只支持事件冒泡。

var eventUtil = {
  addHandler:function(element,type,handler){
  if(element。addEventListener){
  element。addEventListener(type,handler,false); 
  }else if(element。attachEvent){
   element。attachEvent(‘on' + type,handler)  ;
  }else{
    element【‘on' + type】= handler;
  }
}
   removeHandler:function(element,type,handler){
   if(element。removeEventListner){
   element。removeEventListner(type,handler);
  }else if(element。detachEvent){
   element。detachEvent(‘on' + type,handler) ;
  }else{
   element【‘on' + type】 = handler ; 
  }
}
}

3.事件对象

在触发DOM上的事件时会产生一个对象,事件对象event。

(1)DOM中的事件对象。

1.type属性 用于获取事件类型。

2.target属性 用于获取事件目标。

3.stopPropagation()方法  用于阻止事件冒泡。

4.preventDefault()方法  阻止事件的默认行为。

(2)IE中的事件对象。

1.type属性 用于获取事件类型。

2.srcElement属性 用于获取事件的目标。

3.cancelBubble属性 用于阻止事件冒泡。 设置true 表示阻止冒泡   设置false 表示不阻止冒泡。

4.returnValue属性  用于阻止事件的默认行为。设置false表示阻止事件的默认行为。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
对xmlHttp对象的理解
Jan 17 Javascript
js data日期初始化的5种方法
Dec 29 Javascript
javascript中setAttribute()函数使用方法及兼容性
Jul 19 Javascript
javascript实现简单的页面右下角提示信息框
Jul 31 Javascript
七个不允许错过的jQuery小技巧
Dec 21 Javascript
基于jQuery的表单填充实例
Aug 22 jQuery
Vue-CLI 3.X 部署项目至生产服务器的方法
Mar 22 Javascript
javascript面向对象程序设计实践常用知识点总结
Jul 29 Javascript
vue设置导航栏、侧边栏为公共页面的例子
Nov 01 Javascript
Openlayers显示地理位置坐标的方法
Sep 28 Javascript
jQuery zTree如何改变指定节点文本样式
Oct 16 jQuery
jquery插件实现图片悬浮
Apr 16 jQuery
详解Angularjs 如何自定义Img的ng-load 事件
Feb 15 #Javascript
js实现滑动到页面底部自动加载更多功能
Feb 15 #Javascript
JS 实现随机验证码功能
Feb 15 #Javascript
JS实现PC手机端和嵌入式滑动拼图验证码三种效果
Feb 15 #Javascript
javascript设计模式之中介者模式学习笔记
Feb 15 #Javascript
javascript中apply/call和bind的使用
Feb 15 #Javascript
JS实现图片放大缩小的方法
Feb 15 #Javascript
You might like
利用php来自动调用不同服务器上的flash
2006/10/09 PHP
PHP 开发工具
2006/12/06 PHP
PHP setcookie指定domain参数后,在IE下设置cookie失效的解决方法
2011/09/09 PHP
基于PHP-FPM进程池探秘
2017/10/17 PHP
浅谈PHP5.6 与 PHP7.0 区别
2019/10/09 PHP
PHP Ajax跨域问题解决方案代码实例
2020/08/01 PHP
基于jQuery实现左右div自适应高度完全相同的代码
2012/08/09 Javascript
jquery.blockUI.js上传滚动等待效果实现思路及代码
2013/03/18 Javascript
Extjs优化(二)Form表单提交通用实现
2013/04/15 Javascript
js判断字符长度以及中英文数字等
2013/12/31 Javascript
jquery 扑捉回车键事件代码
2014/04/24 Javascript
JavaScript实现N皇后问题算法谜题解答
2014/12/29 Javascript
浅析JavaScript事件和方法
2015/02/28 Javascript
Node.js 异步编程之 Callback介绍(一)
2015/03/30 Javascript
json与jsonp知识小结(推荐)
2016/08/16 Javascript
NODE.JS跨域问题的完美解决方案
2016/10/20 Javascript
AngularJS指令用法详解
2016/11/02 Javascript
SelecT下拉框选中和取值的解决方法
2016/11/22 Javascript
jQuery实现验证码功能
2017/03/17 Javascript
nodejs个人博客开发第六步 数据分页
2017/04/12 NodeJs
关于js中的鼠标事件总结
2017/07/11 Javascript
通过button将form表单的数据提交到action层的实例
2017/09/08 Javascript
javascript绘制简单钟表效果
2020/04/07 Javascript
在vue中使用vant TreeSelect分类选择组件操作
2020/11/02 Javascript
Django之choices选项和富文本编辑器的使用详解
2020/04/01 Python
python如何快速生成时间戳
2020/07/21 Python
6种非常炫酷的CSS3按钮边框动画特效
2016/03/16 HTML / CSS
微信浏览器左上角返回按钮拦截功能
2017/11/21 HTML / CSS
使用 HTML5 Canvas 制作水波纹效果点击图片就会触发
2014/09/15 HTML / CSS
ToysRus日本官网:玩具反斗城
2018/09/08 全球购物
英国户外服装品牌:Craghoppers
2019/04/25 全球购物
怎样写演讲稿
2014/01/04 职场文书
项目考察欢迎辞
2014/01/17 职场文书
教师党员承诺书
2014/03/25 职场文书
整改报告格式
2014/11/06 职场文书
销售区域经理岗位职责
2015/04/10 职场文书