假设我只想将一个简单的点击处理程序附加到一个元素,我总是这样做:
$("#mydiv").click(function() { ... });
看看JQuery文档,似乎.on()
是附加事件处理程序并替换.bind(),. delegate()和.live()的“推荐”方式:
As of jQuery 1.7,the .on() method provides all functionality required
for attaching event handlers. For help in converting from older jQuery
event methods,see .bind(),.delegate(),and .live().
在.click()
的文档中,它说:
This method is a shortcut for .bind(‘click’,handler) in the first two variations,and .trigger(‘click’) in the third.
所以这意味着.click()正在使用.bind(),它将被弃用并替换为.on(),对吧?或者暗示.click()会坚持下去,但它会在某些时候成为.on(“点击”)的捷径?
基本上,我的问题是这个…今天编写JQuery代码时,我应该使用:
Variant 1: $("#mydiv").click(function() { ... });
要么:
Variant 2: $("#mydiv").on("click",function() { ... });
?
另外,正如您所述,click()(和其他事件快捷方式)将转换为on(“event”,function(){…});无论如何,通过jQuery,它可以节省一个步骤 – 当然,这不会产生明显的差异.
最后,在我看来,(“点击”)读起来更好.
原文地址:https://www.jb51.cc/jquery/428028.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。