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

javascript – * this * over event.target的优势

在事件侦听器中使用this或event.target更好/更快

我一直在编写这样的代码(例如是jQuery):

jQuery('input').bind('keyup',function (e) {
 var j = jQuery(e.target);
 foo(j.attr('id'),j.val() );
});

我被告知要用这个替换e.target,因为它是“更好”的.一个或另一个真的有什么优势吗?

我使用目标,因为它是一个更一般的解决方案,因为它适用于委派的事件.我有麻烦的基准测试,因为我的测试混乱的绑定(虽然,显然,在这种情况下,差异太小,无论如何)

解决方法

一个不比另一个更好,但是它们做了不同的事情:这是事件附加的元素,而event.target是调用事件的元素.

例如

div id=foo   
   div id=bar

当点击附加到foo,并且单击了bar时,该事件将冒泡到foo.在这种情况下,将foo和event.target指向bar

最终取决于你需要处理的元素.

api.jquery.com/event.target中有一个小例子说明了event.target.这是一个使用该示例的小样本,但也显示了以下内容http://jsbin.com/adifan/edit#javascript,live

原文地址:https://www.jb51.cc/js/155607.html

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

相关推荐