2010-12-03 197 views
1

我已經制作了一個動態系統,因此您可以在divs中添加divs divs等。 現在我想知道div的id,當我點擊它時。我做了一個這樣的腳本: HTML:獲取子女的編號

<div id="div1" class="mod"> 
    <div id="div4" class="mod"> 
    <div id="div5" class="mod"></div> 
    </div> 
</div> 
<div id="div2" class="mod"> 
    <div id="div6" class="mod"> 
    <div id="div7" class="mod"></div> 
    </div> 
</div> 

的Jquery:

$('.mod').click(function(){ 
    var id = $(this).attr('id'); 
    alert(id); 
}); 

如果您點擊例如在DIV4它將返回div_4和div_1但我只想div_4作爲回報。 有人可以幫我嗎?我讀了一些關於父母和孩子的東西,但我無法弄清楚。 Regards Frank

回答

4

您可以阻止事件的冒泡:

$('.mod').click(function(event){ 
    var id = $(this).attr('id'); 
    alert(id); 
    event.stopPropagation(); 
}); 

的點擊事件則只能達到最高層/格。

+0

對於很好的答案,這是我非常感謝你! – Frank 2010-12-03 13:16:43

0

不要將點擊事件添加到每個元素。將一個單擊事件添加到所有div的容器中,然後使用jquery事件對象獲取單擊的目標元素。