参考资料: 又被事件冒泡坑了一把,这次要彻底弄懂浏览器的事件流 JavaScript事件代理和委托 事件委托: 实际案例:我们平时在开发时,有这种情况,一个ul里有有好多个li子元素,这个li的数量可以是固定的,也可以是动态添加删除的,而且每个li都必要有一个点击事件, 这时我们会有这些解决办法(事 ...
分类:
其他好文 时间:
2016-07-19 13:36:46
阅读次数:
262
JavaScript与HTML的交互通过事件来实现。而浏览器的事件流是一个非常重要的概念。不去讨论那些古老的浏览器有事件捕获与事件冒泡的争议, 只需要知道在DOM2中规定的事件流包括了三个部分,事件捕获阶段、处于目标阶段、事件冒泡阶段。 1.事件捕获 事件捕获,是从document元素开始,越高级的 ...
分类:
Web程序 时间:
2016-07-18 02:45:06
阅读次数:
197
/* 功能:停止事件冒泡 */ function stopBubble(e) { //如果提供了事件对象,则这是一个非IE浏览器 if ( e && e.stopPropagation ) //因此它支持W3C的stopPropagation()方法 e.stopPropagation(); els ...
分类:
编程语言 时间:
2016-07-16 00:13:38
阅读次数:
210
一、 事件流 1. 事件流描述的是从页面中接收事件的顺序 2. 事件冒泡(event bubble):事件从开始时由最具体的元素(就是嵌套最深的那个节点)开始,逐级向上传播到较为不具体的节点(就是Document) 3. 事件捕获:不太具体的节点(Document根节点)更早接收到事件,最具体的节点 ...
分类:
Web程序 时间:
2016-07-15 19:24:24
阅读次数:
220
1事件传播——冒泡与捕获 默认情况下,事件使用冒泡事件流,不使用捕获事件流。然而,在Firefox和Safari里,你可以显式的指定使用捕获事件流,方法是在注册事件时传入useCapture参数,将这个参数设为true。 2冒泡事件流 当事件在某一DOM元素被触发时,例如用户在客户名字节点上点击鼠标 ...
分类:
Web程序 时间:
2016-07-13 15:55:55
阅读次数:
280
事件流 事件流描述的是从页面中接收事件的顺序,IE和Netscape提出来差不多完全相反的事件流的概念,IE事件流是事件冒泡流,Netscape事件流是事件捕获流。 事件冒泡 IE的事件流叫做事件冒泡,即事件开始时由最具体的元素(文档中嵌套最深的那个节点)接收,然后逐级向上(一直到文档);如下代码: ...
分类:
编程语言 时间:
2016-07-12 21:06:31
阅读次数:
291
事件流 1.事件流: 描述的是在页面中接受事件的顺序 2.事件冒泡: 由最具体的元素接收,然后逐级向上传播至最不具体的元素的节点(文档) 3.事件捕获: 最不具体的节点先接收事件,而最具体的节点应该是最后接收事件 事件处理 1.HTML事件处理: 直接添加到HTML结构中 2.DOM0级事件处理: ...
分类:
Web程序 时间:
2016-07-10 23:31:43
阅读次数:
487
什么是事件委托 事件委托是Jquery中一种事件绑定的方式,不同于常见的事件绑定方式将事件绑定在目标元素上,而是将事件绑定在父级元素上通过事件冒泡来执行绑定函数。 事件委托的原理 事件委托将事件监听绑定在目标元素的父级上,当目标元素响应事件时冒泡到绑定事件的父级上,进行判断该事件的目标元素是否是传入 ...
分类:
Web程序 时间:
2016-07-05 16:58:05
阅读次数:
219
一、什么是冒泡事件 事件发生后,浏览器通常首先触发事件发生元素上的事件处理程序,然后是它的父元素,父元素的父元素……依此类推, 直到文档的根元素为止。 这被称为事件冒泡,是事件传播的最常见的方式。当处理好一个事件后, 你可能想要停止事件的传播,不希望它继续冒泡。就要绑定该事件的处理方法。 如上图,给 ...
分类:
Web程序 时间:
2016-07-02 15:57:50
阅读次数:
237
一、我们先分析其产生的原因: 1、当鼠标从父级移入子集时触发了父级的两个事件:a、父级的mouseout事件(父级离开到子集);b、由于事件冒泡影响,又触发了父级的mouseover事件(父级移入父级); 2、当鼠标从子集移出到父级时又触发了父级的两个事件:a、由于事件冒泡影响,父级触发了mouse ...
分类:
编程语言 时间:
2016-07-01 01:21:20
阅读次数:
1176