unbind问题单击关闭

时间:2014-02-26 15:54:56

标签: jquery

$('.filter-tab').on('click', function(){
    var $correspondingOverlay = $(this).next().next();
    $correspondingOverlay.fadeIn();
    if($('#one').is(':visible')) {
        $('#sort h2').off('click');
    }
    if($('#two').is(':visible')) {
        $('#filter h2').off('click');
    }
});

$('.close').on('click', function () {
    $('.filter-results').fadeOut();
    $('#filter h2, #sort h2').on('click');
});

off()部分没有取消点击,仍然允许相应的叠加淡入。任何想法,我在这里出错?

2 个答案:

答案 0 :(得分:1)

off应与on上的选择器相同。

因此,这应该有效:

$('.filter-tab').off('click');

否则,你必须拥有多个不同的.on,而不是通用选择器。

答案 1 :(得分:0)

 $('body').off('click','#filter h2',function(){});