Они будут такими же, если вы нажмете на элемент, к которому подключено событие. Однако, если вы щелкнете по child , и он всплывет, то this
относится к элементу, с которым связан этот обработчик, а e.target
по-прежнему относится к элементу, из которого произошло событие.
Вы можете увидеть разницу здесь: http://jsfiddle.net/qPwu3/1/
с учетом этой разметки:
<style type="text/css">div { width: 200px; height: 100px; background: #AAAAAA; }</style>
<div>
<input type="text" />
</div>
Если у вас было это:
$("div").click(function(e){
alert(e.target);
alert(this);
});
Щелчок по <input>
предупредит вход, а затем div, потому что вход инициировал событие, div обрабатывал его, когда он всплывал. Однако, если у вас было это:
$("input").click(function(e){
alert(e.target);
alert(this);
});
Он всегда предупреждает ввод дважды, поскольку он является одновременно исходным элементом для события и тем, который его обработал.
1022 *