2014-01-06 69 views
1

父我有以下結構:相同的類:選擇孩子,但不是在jQuery的

<div class="box blue"> 
    <div class="box red"> 

    </div> 
    <div class="box green"> 

    </div> 
</div> 

基本上,有可能含有其他盒盒。

現在我想歸檔,如果有人點擊父框(藍色),背景會變爲白色。

但是,如果有人點擊了子框(紅色),那麼紅色的子框的背景應該變白。

我曾嘗試以下:

$('.box').click(function(){ 
    $(this).css({'background-color': '#fff'}); 
}); 

這行不通的,因爲如果我點擊比如孩子中,我觸發父點擊。

有誰知道解決方案?

回答

4

你應該阻止事件中使用

e.stopPropagation(); 

固定碼如下:起泡

$('.box').click(function(e){ 
    e.stopPropagation(); 
    $(this).css({'background-color': '#fff'}); 
}); 
+1

完全爲我工作,謝謝! –