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

.toggle(handler,handler [,handler])

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

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

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

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

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

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

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