Event .click()打开和关闭

Event .click () on and off

本文关键字:click Event      更新时间:2023-09-26

我用这种方式制作了几个点击事件:

$(function () {
    $('#button1').click(function () {
        //do samething...
    });
    $('#button2').click(function () {
        //do samething...
    });
    .....
});

在我的应用程序的不同部分,我想关闭点击,然后再打开它们:

我可以关闭点击调用这个函数:

function keysLock() {
    $('#button1').off('click');
};

现在我无法恢复点击功能。我尝试了一些类似

的东西
$('#button1').on('click')

(和许多类似的东西),但它不起作用

只是为了添加一个基于您的评论的替代解决方案,您可以使用一个变量来启用/禁用事件,然后您不必删除处理程序,像这样:

$(function () {
  var someSpecificCondition = false;
  function doThisStuffOnClick () {
    if (someSpecificCondition) {
      return;
    }
    // do something
  }
  $('#button1, #button2').click(doThisStuffOnClick);    
});

.on()…….off(),所以

指定一个点击自定义函数,如:

function doThisStuffOnClick () {
  // do someshitng
}

.on()法:

$("#button1").on("click", doThisStuffOnClick);

关闭:

$("#button1").off("click");

而不是再次打开

$("#button1").on("click", doThisStuffOnClick);


.off() jQuery Docs