在使用旧版jQuery的项目中,我有时会看到如下内容:
$(window).unbind("scroll").scroll(infiniteScroll);
我认为这是为了防止重复事件处理程序。
对于较新的on
函数,这是否必要?换句话说,在使用off
之前是否有必要使用on
?
$(window).off("scroll").on("scroll", infiniteScroll);
或者简单地使用on
即使它可能被绑定多次也是安全的吗?
$(window).on("scroll", infiniteScroll);
答案 0 :(得分:2)
.on()
本身并没有解决问题,但它确实提供了名称空间,这确实可以更有力地解决问题。
$(window)
.off(".mynamespacethatisunique")
.on("scroll.mynamespacethatisunique", infiniteScroll);