【问题标题】:Call actual function from blur()从 blur() 调用实际函数
【发布时间】:2010-12-14 16:09:36
【问题描述】:

我正在尝试编写一些在对象模糊时调用函数的 jquery。由于我的底层代码中的一些要求,我需要调用一个函数,如下所示:

$("object").blur(myFunction());

而不是这样:

$("object").blur(function() {
  //do stuff
});

很遗憾,使用第一种方法绑定 blur 事件不起作用。它实际上在页面加载时运行该方法,然后从不绑定该函数。我在这里做错了什么?

我已经设置了一个 jsfiddle 来演示我的问题,如果它可以帮助您进行可视化。 http://jsfiddle.net/WskKJ/

【问题讨论】:

    标签: jquery callback handle blur


    【解决方案1】:
    $("object").blur(myFunction);
    

    传递委托时不要使用 ()

    【讨论】:

      【解决方案2】:
      $("object").blur(function() {
        myFunction();
      });
      

      【讨论】:

      • 虽然这可行,但实际上没有必要为了调用另一个函数而创建一个新的匿名函数。
      • 是的,在这种情况下确实如此。我这样建议是因为海报代码中的评论说//do stuff。以防万一您在调用 myFunction() 之前需要做更多工作
      猜你喜欢
      • 2021-09-04
      • 1970-01-01
      • 2019-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-23
      • 2022-07-22
      相关资源
      最近更新 更多