target(IE下为scrElement):在W3cschool中解释为:返回触发此事件的元素,(事件的目标节点),意思就是说是哪个HTML元素触发了这个事件。
currentTarget:在W3cschool中解释为:返回其事件监听器触发该事件的元素,意思是当前事件发生在哪个元素
<script>
function doSomething(e) {
if (!e) e = window.event;
alert(e.currentTarget.id);
}
window.onload = function(e) {
if (!e) e = window.event;
var test1 = document.getElementById("test1");
var test2 = document.getElementById("test2");
test1.addEventListener("click", doSomething, false);
test2.addEventListener("click", doSomething, false);
}
</script>
<div id="test1">
<p id="test2">This is a test!</p>
</div>
当用户点击元素p的时候
,doSomething()会被执行两次,但是你怎么知道当前是哪个元素在处理点击事件,target/srcElement都指向元素p,而currentTarget会指向当前处理事件的元素,所以先
然后再:
currentTarget指向了当前执行事件的元素。