.delegate()与.on()的比较

我正在我的web应用程序中使用jQuery。我一直在使用.bind()。我了解.delegate()是如何工作的,但我不清楚它与.on()有什么区别,或者在哪种情况下哪个更好

此外,我正在使用jQuery 1.6,因此我想知道是否值得为jQuery 1.7准备脚本,方法是设置类似于以下的条件:

if(typeof$(选择器).on=='function'){
/*使用*/
}否则{
/*use.delegate()*/
}

这是一个好主意(为()上的.on做准备)还是白费力气

请帮我弄清楚这些方法

.on()语法是1.7版使用的新语法,它旨在替代.bind().delegate().live()

更多信息请点击这里->http://blog.jquery.com/2011/11/03/jquery-1-7-released/

新事件API:.on()和.off()

新的.on()和.off()API统一了附加事件的所有方式
到jQuery中的文档-而且它们的键入时间更短

$(元素).on(事件[,选择器][,数据],处理程序);
$(元素).off([events][,selector][,handler]);

当提供选择器时,.on()与.delegate()在这方面类似
它附加一个由选择器过滤的委托事件处理程序。什么时候
选择器被省略或为null。调用类似于.bind()。有一个
大小写不明确:如果数据参数是字符串,则必须提供
选择器字符串或null,以便数据不会被误认为
选择器。为数据传递一个对象,您就不必担心
特殊情况

所有现有的事件绑定方法(及其对应的
解除绑定方法)仍然存在于1.7中,但我们建议您
对于您知道版本1.7或更高版本的任何新jQuery项目,请使用.on()
正在使用更高版本。
(强调我的)

发表评论