微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – Jquery – event.target和此关键字之间的区别?

这个event.target有什么区别?

让我们说我有

$("test").click(function(e) {
    $thisEventOb = e.target;
    $this = this;
    alert($thisEventObj);
    alert($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);
});

它会始终警告输入两次,因为它既是事件的原始元素,也是事件的原始元素.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐