你所在位置:首页Javascript开发 → JavaScript事件冒泡简介及应用

JavaScript事件冒泡简介及应用

发布时间:2019-03-14

 

一、什么是事件冒泡

在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document对象(有些是window)。

 

打个比方说:你在地方法院要上诉一件案子,如果地方没有处理此类案件的法院,地方相关部门会帮你继续往上级法院上诉,比如从市级到省级,直至到中央法院,最终使你的案件得以处理。

 

二、事件冒泡有什么作用

(1)事件冒泡允许多个操作被集中处理(把事件处理器添加到一个父级元素上,避免把事件处理器添加到多个子级元素上),它还可以让你在对象层牟煌侗鸩痘袷录/p>

 

【集中处理例子】

 

<p onclick="eventHandle(event)" id="outSide" style="width:100px; height:100px; background:#000; padding:50px">

<p id="inSide" style="width:100px; height:100px; background:#CCC"></p>

</p>

<script type="text/javascript">

//本例子只在外面盒子定义了处理方法,而这个方法一样可以捕获到子元素点击行为并处理它。假设有成千上万子元素要处理,难道我们要为每个元素加“onclick="eventHandle(event)"”?显然没有这种集中处理的方法来的简单,同时它的性能也是更高的。

function eventHandle(e)

{

    var e=e
上一篇:解析JQuery 的Bind()事件
下一篇:分享一个实时动态修改测试网站字体的jQuery代码片断