我从jQuery lazyLoad插件中借用了一些代码构思,并想知道下面两种方法绑定滚动事件是否存在任何真正的性能差异。
特别是,为什么要使用返回?那里有什么好处吗?
//how I wrote it
$(window).on('scroll', function(){
base.update();
});
//lazyLoad version
$(window).bind('scroll', function() {
return base.update();
});
为了简单起见,我不会在这里限制滚动...
答案 0 :(得分:3)
如果base.update()
有时会返回false
,那么如果处理程序返回值,则会产生阻止事件默认操作的效果。 (我不是100%确定阻止“滚动”事件的默认操作实际上有效;我猜它可能。对于“点击”和其他类似的事情肯定是正确的。)
如果base.update()
没有返回任何内容,则返回其返回值将不会产生任何影响。我非常怀疑这种或那种方式会对性能造成任何影响。