【问题标题】:What does the anonymous function passed into the off function mean?传入off函数的匿名函数是什么意思?
【发布时间】:2019-07-08 12:39:53
【问题描述】:

传入off函数的匿名函数是什么意思?

例如,以下是什么意思:

$jqueryEl.off("click", function() { console.log("When will it be called?"); });.

在删除所有点击侦听器后会调用function() { console.log("When will it be called?");,还是会调用它而不是删除的点击侦听器?

我问这个是因为the documentation 没有明确的答案:

先前为事件附加的处理函数,或特殊值 false。

【问题讨论】:

    标签: javascript jquery api events handler


    【解决方案1】:

    传入off函数的匿名函数是什么意思?

    没什么用。

    由于是函数表达式,所以会生成一个new函数。因此,它不能之前已为事件附加

    也不是false

    编写该代码的人出错了。


    当有人打算有条件地删除该函数时,通常会发生这种情况:

    const myHandler = function() { console.log("When will it be called?"); };
    
    $jqueryEl.on("click", myHandler);
    
    $somethingElse.on("click", function () {
        $jqueryEl.off("click", myHandler);
    });
    

    ...但是当他们创建了两个相同的函数时,而不是为两个不同的调用重复使用相同的函数。

    【讨论】:

      猜你喜欢
      • 2014-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-13
      • 2018-02-06
      • 1970-01-01
      相关资源
      最近更新 更多