js中的target与currentTarget的区别<转>

关于js中target与currentTarget的区别的关键在于他们所处在的事件流的阶段是不一样的,target处于事件流的目标阶段,currentTarget处理事件流的捕获、处于目标阶段和冒泡阶段。只有当他们同事处于目标阶段的时候他们的指向才是一样的,请看以下代码:

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
<title>js性能优化</title>
</head>
<body> 
    <div id="outer">
        outer
        <p>
            inner
        </p>
    </div>
</body>
<script type="text/javascript">
(function(){
    var a=document.getElementById('outer');
        a.addEventListener('click',function(e){
        alert(e.target.innerHTML);
        alert(e.currentTarget.innerHTML);
        alert(e.currentTarget === e.target);
    },false);
})();
</script>
</html> 
原文地址:https://www.cnblogs.com/winkey4986/p/4968284.html