使用 JQuery 中的 off 和 on 方法绑定事件

Bind event using off and on methods in JQuery

我是 JQuery 的新手,我一直想知道为什么有些开发人员经常使用这种语法: $("#someElem").off("change").on("change", function () { //TODO: }),
绑定一些事件? 以这种方式使用它有什么好处,而不仅仅是使用 $("#someElem").on("change", function () { //TODO: }) , 之前添加 off() 方法是最佳做法吗?这样做的原因是什么?

Is it any advantages to using it this way

他们试图做的是删除任何已经附加到元素的潜在处理程序。

因此,这是为了确保将调用的唯一处理程序是当前提供的处理程序。

如果 off 未被调用,当前处理程序将被调用 以及 一些先前附加的处理程序。它不会覆盖,而是执行所有设置的处理程序。

如果你知道自己在做什么,那么你就不需要调用 off,但它并不被称为 "best practice",而是像@adeneo 所说的那样更像是 hack。