Javascript 删除jQuery中的函数

Javascript 删除jQuery中的函数,javascript,jquery,Javascript,Jquery,我需要能够删除一个点击事件的功能 我已经研究了解除绑定和取消绑定,但我不确定最好的解决方案,是否有摧毁能力-我似乎找不到。我需要能够在单击按钮时再次运行该功能 $('.button').on('click', function (e) { run(); $('.back').on('click', '.back', function () { //remove the run function }); }); function run() {

我需要能够删除一个点击事件的功能

我已经研究了解除绑定和取消绑定,但我不确定最好的解决方案,是否有摧毁能力-我似乎找不到。我需要能够在单击
按钮时再次运行该功能

$('.button').on('click', function (e) {
    run();

    $('.back').on('click', '.back', function () {
        //remove the run function
    });
});

function run() {
    //code
}
我也尝试过使函数无效,但它没有完全删除事件

run = null;

run = function () {};
谢谢

您可以使用:

尝试:


前面的答案可能有用。如果没有,请尝试以下操作:
run()。remove
您可以使用它从元素中删除以前附加的事件处理程序。

如果他在该事件中除了run函数之外还有其他逻辑,会发生什么?
run = $.noop();
var isRun = 0;
$('.button').on('click', function (e) {
   if(isRun == 0) {
    run();
} 
});
  $('body').on('click', '.back', function () {
       isRun = 1;
    });
function run() {
    //code
}
$('.back').on('click', '.back', function () {
        function run() {}//empty function will override original function on click
    });