<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head>
<card title="jQuery中阻止冒泡事件的方法介绍 stopPropagation preventDefault" id="card1">
<p> 游客</p><p>
标题:jQuery中阻止冒泡事件的方法介绍 stopPropagation preventDefault<br/>
正文:<br/>
一、冒泡事件简介当我们点击一个控件的时候，如果包括这个控件的父控件也有click事件，则会继续执行。<br/>比如：div下的a都有click事件，点击a的时候，会alert出现2次。这个现象叫做冒泡事件。<br/>这个事件从原始元素开始一直冒泡到DOM树的最上层。<br/>目标元素: 任何一个事件的目标元素都是最开始的那个元素，在我们的这个例子中也就是按钮，<br/>并且它在我们的元素对象中以属性的形式出现。使用事件代理的话我们可以把事 件处理器添加到一个元素上，<br/>等待一个事件从它的子级元素里冒泡上来，并且可以很方便地得知这个事件是从哪个元素开始。<br/>注意：<br/>blur、focus、load和unload不能像其它事件一样冒泡。事实上blur和focus可以用事件捕获而非事件冒泡的方法获得（在IE之外的其它浏览器中）。二、阻止jQuery事件冒泡jQuery对DOM的事件触发具有冒泡特性。有时利用这一特性可以减少重复代码，但有时候我们又不希望事件冒泡。这个时候就要阻止 jQuery.Event冒泡。在jQuery.Event的文档中的开头得知，jQuery.Event对象是符合W3C标准的一个事件对象，同时jQuery.Event免去了检查兼容IE的步骤。<br/>jQuery.Event提供了一个非常简单的方法来阻止事件冒泡：event.stopPropagation();<br/>代码如下:<br/>$(&quot;p&quot;).click(function(event){<br/>     event.stopPropagation();<br/>     // do something<br/>})但是这个方法对使用live绑定的事件没有作用，需要一个更简单的方法阻止事件冒泡：return false;<br/>代码如下:<br/>$(this).after(&quot;Another paragraph!&quot;);return false;  });兼容多个浏览器的终止冒泡函数：<br/>代码如下:<br/>   function stopDefault(e) {<br/>       <br/><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=999&amp;Page=1">[&lt;&lt;]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=999&amp;Page=1">[[1]]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=999&amp;Page=2">[2]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=999&amp;Page=3">[3]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=999&amp;Page=3">[&gt;&gt;]</a><br/>
<br/>
<a href="wap.asp?act=Com&amp;id=999">查看评论(0)</a><br/>
<a href="wap.asp?act=AddCom&amp;inpId=999">发表评论</a><br/><br/>

<br/>

<br/>
<a href="http://camnpr.com/wap.asp">首页</a>
</p>
</card>
</wml>