Click事件我有以下HTML:替代父的元素從子元素
<table>
<tr>
<td><div>test</div></td>
<td>Some Text</td>
</tr>
</table>
使用jQuery,我有一個運行TR元素上,當用戶點擊一些代碼。它運作良好。
但是,當有人點擊TD元素內的DIV時,我只想要DIV的「click」事件,而不是父級的TR「click」事件。
我該怎麼做?
非常感謝!
Click事件我有以下HTML:替代父的元素從子元素
<table>
<tr>
<td><div>test</div></td>
<td>Some Text</td>
</tr>
</table>
使用jQuery,我有一個運行TR元素上,當用戶點擊一些代碼。它運作良好。
但是,當有人點擊TD元素內的DIV時,我只想要DIV的「click」事件,而不是父級的TR「click」事件。
我該怎麼做?
非常感謝!
使用stopPropagation:
$(function() {
$('tr').bind('click', function (e) {
console.log('tr');
});
$('div').bind('click', function(e) {
e.stopPropagation();
console.log('div');
});
});
在您的click
處理程序中使用evt.stopPropagation
。
瀏覽jQuery的event.stopPropagation()
event.stopImmediatePropagation()爲我工作:)
這並沒有提供問題的答案。要批評或要求作者澄清,在他們的帖子下留下評論 - 你總是可以評論你自己的帖子,一旦你有足夠的[聲譽](http://stackoverflow.com/help/whats-reputation),你會能夠[評論任何帖子](http://stackoverflow.com/help/privileges/comment)。 – Barranka
我無法對以上任何答案添加評論,因爲這些不是我的答案。 evt.stopPropagation()沒有爲我工作,而event.stopImmediatePropagation()做到了,這就是爲什麼我覺得值得與其他人分享這個:) –
'的preventDefault()'不停止事件冒泡。 –
@ŠimeVidas:Darn,誤讀了這個問題...... – Ryan