如果用户点击多次,则停止 .click 功能

Stop .click function if user clicks many times

如果用户点击次数过多,如何停止 .click 功能? 我的代码:

$('button').click(function() {
    $('#bg').fadeToggle('200');
});

jsfiddle DEMO

尝试使用 one

$( "#foo" ).one( "click", function() {
 $('#bg').fadeToggle('200');
});

DOC

超过5次点击后将停止执行函数:http://jsfiddle.net/1dc8u7ms/1/

  var counter = 0;
    $('button').click(function() {
        if(counter > 5){return};
        $('#bg').fadeToggle('200');
        return counter++;
    });

我猜你问这个是因为 fadeToggle 动画不正常。

您可以通过 .stop([bool], [bool])

控制 running/queued 动画

尝试这样的事情:

var maxclicks = 5,
    clicks = 0,
    handler = function() {
        if(clicks < maxclicks){
            $('#bg').fadeToggle('200');
            clicks++;
        }    
        else{
            console.log('You have reached the limit of '+ maxclicks + ' clicks.');
            $('button').off('click',handler)
        }

    };

$('button').on('click',handler);