0

jQuery方法的文档bind指出:

As of jQuery 1.7, the .on() method is the preferred method for attaching event handlers to a document.

这是否意味着该方法最终将被弃用,或者是否存在仅使用该方法而不是该方法bind可以实现某些目标的情况?bindon

4

3 回答 3

1

没有什么是你bind不能做的on。但这并不一定意味着它会被弃用。click对于,change等 也是如此,on可以替换 jquery 库的许多其他部分,但这不是摆脱它们的理由。替代方案更短,在某些情况下可以说更具可读性。

我想两者兼有的原因是,它bind特别不做事件委托,而on可以在有或没有委托的情况下使用。我认为除了 jquery 团队本身之外的任何人都无法告诉您它是否会被弃用。

于 2013-07-09T13:19:15.433 回答
1

在 jquery 源代码中:

bind: function( types, data, fn ) {
        return this.on( types, null, data, fn );
    },

所以 bind() 方法在内部使用 .on() 方法。

通常,当一种方法不是首选方法时,这可能表明在弃用之前的第一阶段,然后在以后的版本中将其删除。

所以回答你的问题:不,没有什么.bind()不能做的.on(),使用.on()方法。

于 2013-07-09T13:19:24.110 回答
0

AFAIK 没有什么.bind()是不可能的.on()

来自.on()的文档

.on() 方法将事件处理程序附加到 jQuery 对象中当前选定的元素集。从 jQuery 1.7 开始,.on() 方法提供了附加事件处理程序所需的所有功能。有关从旧 jQuery 事件方法转换的帮助,请参阅.bind().delegate().live()

于 2013-07-09T13:16:56.747 回答