为什么在事件处理程序中使用'return'?

时间:2013-11-15 15:53:36

标签: javascript jquery

我从jQuery lazyLoad插件中借用了一些代码构思,并想知道下面两种方法绑定滚动事件是否存在任何真正的性能差异。

特别是,为什么要使用返回?那里有什么好处吗?

 //how I wrote it
 $(window).on('scroll', function(){
       base.update();
   });

  //lazyLoad version
  $(window).bind('scroll', function() {
       return base.update();
  });

为了简单起见,我不会在这里限制滚动...

1 个答案:

答案 0 :(得分:3)

如果base.update()有时会返回false,那么如果处理程序返回值,则会产生阻止事件默认操作的效果。 (我不是100%确定阻止“滚动”事件的默认操作实际上有效;我猜它可能。对于“点击”和其他类似的事情肯定是正确的。)

如果base.update()没有返回任何内容,则返回其返回值将不会产生任何影响。我非常怀疑这种或那种方式会对性能造成任何影响。