欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Javascript中, event 的 target 与 currentTarget 的区别 博客分类: JavaScript javascripteventtargetcurrtentarget冒泡 

程序员文章站 2024-03-14 18:53:29
...

target在事件流的目标阶段;currentTarget在事件流的捕获 ,目标及冒泡阶段。只有当事件流处在目标阶段的时候,两个的指向才是一样的, 而当处于捕获和冒泡阶段的时候,target指向被单击的对象而currentTarget指向当前事件活动的对象(一般为父级)。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
	<script type="text/javascript">
	function test(e){  
         alert("e.target.tagName : " + e.target.tagName + "\n e.currentTarget.tagName : " + e.currentTarget.tagName);  
    }
	</script>
</head> 
<body> 
	<div id="outer" style="background:#099" onclick="test(event)">  
		click outer  
		<p id="inner" style="background:#9C0">click inner</p>  
		<br>  
    </div> 
</body> 
</html>

 

上面的示例中,当在outer上点击时,e.target与e.currentTarget是一样的,都是div;当在inner上点击时,e.target是p,而e.currentTarget则是div。

本文转自:萤火开发网

作者:月高不知归