我是JQuery的新手,我一直想知道为什么有些开发人员经常使用这种语法:
$("#someElem").off("change").on("change", function () { //TODO: })
,
绑定一些事件?
以这种方式使用它是否有任何好处,而不仅仅是使用它
$("#someElem").on("change", function () { //TODO: })
,
最好先添加 off()方法,以及这样做的原因是什么?
答案 0 :(得分:1)
以这种方式使用它有什么好处
他们尝试做的是删除任何已经附加到元素的潜在处理程序。
因此,确保将被调用的唯一处理程序是当前提供的处理程序。
如果未调用off
,则当前处理程序将与一起调用以及之前附加的一些处理程序。它不会覆盖,而是执行所有设置的处理程序。
如果你知道自己在做什么,那么你就不需要拨打off
,但它并没有被称为“#34;最佳做法”,而是更多的黑客攻击正如@adeneo所说。