解除绑定实际上并不起作用:还有其他解决方案吗

unbind does not really work : is there any other solution?

本文关键字:其他 解决方案 不起作用 绑定 实际上      更新时间:2023-09-26

我正试图"停止"在#mydiv上的点击操作,我的意思是,如果我在#mydiv100次点击,我希望不透明度只发生一次,而不是100次,我在网上发现了这个带有"unbind"的解决方案,我认为我第一次使用它时它有效,但现在它不起作用,这可能是一个简单的错误,但我真的不知道该看哪里。我评论了我所有的jquery页面,我只有文档准备行和这两个功能,但它不会停止点击时的操作:

$('#mydiv').bind('click', function() {
  $('.myclass').animate(opacity: 0.25);
});
$('#mydiv').unbind('click', function() {
    $('.myclass').animate(opacity: 0.25);
});

非常感谢您的帮助

使用jQuery 1.7+:

$('#mydiv').on('click', anim);
$('#mydiv').off('click', anim);

function anim() {
    $('.myclass').animate(opacity: 0.25);
}

你甚至可以做:

$('#mydiv').on('click', anim);
function anim() {
    $('.myclass').animate(opacity: 0.25);
    $('#mydiv').off('click', anim);
}

$('#mydiv').one("click", function() {
    $('.myclass').animate(opacity: 0.25);
});

当然应该是:

$('.myclass').animate({opacity: 0.25}, speed);

简单使用:

$('#mydiv').unbind('click');

如果您只想点击一次,请使用one

$('#mydiv').one(function() {
  $('.myclass').animate(opacity: 0.25);
});
相关文章: