为什么jQuery删除.toggle()方法?

时间:2014-07-31 06:25:56

标签: jquery toggle

.toggle( handler, handler [, handler ] )

我相信这个API非常方便。但为什么jQuery 1.9删除了它?

1 个答案:

答案 0 :(得分:3)

根据ticket # 11786,它已在1.8中弃用。它后来被删除了1.9。

基本上,该票证包含真正的原因,例如:

  

提供.toggle()方法是为了方便起见。手动实现相同的行为是相对简单的,如果.toggle()中内置的假设被证明是有限的,那么这是必要的。

     

例如,如果对同一元素应用两次,.toggle()无法保证正常工作。

     

由于.toggle()在内部使用点击处理程序来完成其工作,因此我们必须取消绑定点击以删除与.toggle()相关联的行为,以便其他点击处理程序可以在交火中捕获。

     

该实现还会对事件调用.preventDefault(),因此如果在元素上调用.toggle(),则不会遵循链接并且不会单击按钮。