如果我在事件回调函数中没有返回
false
,或者没有使用jQuery的e.stopPropagation
特性,那么事件会向上传递到DOM。在大多数情况下,我不关心事件是否冒泡。就像这个DOM结构示例一样:<div id="theDiv">
<form id="theForm" >
<input type="submit" value="submit"/>
</form>
</div>
通常情况下,我不会像这样拥有多个嵌套的提交回调函数:
$('#theDiv').submit(function() {
alert('DIV!');
});
$('#theForm').submit(function(e) {
alert('FORM!');
e.preventDefault();
});
代码片段
这个示例展示了submit
事件冒泡到一个<div>
上!
如果我停止事件传播或只是阻止默认行为,对我来说没有区别。
在这些情况下,如果我停止事件传播,会获得性能方面的好处吗?