欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Jquery阻止事件冒泡 event.stopPropagation

 更新時(shí)間:2011年12月11日 22:53:40   作者:  
幫朋友寫了一個(gè)小效果,單擊標(biāo)簽后標(biāo)簽變色并添加一個(gè)叉的圖片,點(diǎn)擊叉標(biāo)簽恢復(fù)原樣,具體效果請點(diǎn)擊下面的result
描述: 防止事件冒泡到DOM樹上,也就是不觸發(fā)的任何前輩元素上的事件處理函數(shù)。

version added: 1.0
event.stopPropagation()
我們可以用 event.isPropagationStopped() 來確定這個(gè)方法是否(在那個(gè)事件對象上)調(diào)用過了。

這個(gè)方法對 trigger() 來自定義的事件同樣有效。

注意,這不會阻止同一個(gè)元素上的其它事件處理函數(shù)的運(yùn)行。

Additional Notes:
自從.live()方法處理事件一旦傳播到文檔的頂部,live事件是不可能停止傳播的。同樣地,.delegate() 事件將始終傳播給其中包含的被委托元素;元素上的事件將在被委托事件被調(diào)用的時(shí)候執(zhí)行。
Example:
滅掉click事件的冒泡。
復(fù)制代碼 代碼如下:

$("p").click(function(event){
event.stopPropagation();
// do something
});


東西并不難,主要是記錄下其中的阻止事件冒泡。

  因?yàn)閐iv添加了單擊事件,div內(nèi)部的img也添加了單擊事件,所以當(dāng)單擊img時(shí)會先觸發(fā)img上的單擊事件,再觸發(fā)div上的單擊事件,這就是事件冒泡。

  在Jquery中我們可以很方便的阻止他。

  如下

復(fù)制代碼 代碼如下:
event.stopPropagation();

  這樣一來單擊img就不再觸發(fā)div的單擊事件啦

復(fù)制代碼 代碼如下:

$('div').click(function(){
var $div = $(this);
if($div.find('img').size() > 0){
return;
}else{
$div.css('backgroundColor','#e1f0f3');
$('<img src="http://www.dbjr.com.cn/lovejjhao/341157/o_cha.jpg"/>').
appendTo($(this)).click(function(event){
$div.css('backgroundColor','#ffffff');
$(this).remove();
event.stopPropagation();
}).css('margin-left','10px');
}
});

相關(guān)文章

最新評論