0

我正在做一项实验性任务,该任务需要准确按下按钮 X 次。这个想法是人们需要按下它,例如,连续按下 4 次(按下之间的最大间隔为 0.5 秒)。现在在我的代码中,每次点击都会将变量“点击”增加 1,一旦它等于所选数字 (4),玩家就会收到“绿色信号”。

有没有办法确保如果一个人连续点击按钮 5 次或更多次,该功能不会被执行?这样我就可以限制玩家准确地按下按钮4 次。

<button type="button" class="btn btn-outline-dark rounded-circle main_button"></button>

var click = 0

$('.main_button').on('click',function(){
    click = click + 1;
});

$('.main_button').dblclick(function(){
    click = click + 1;
});

$('.main_button').on('click',function() {
    if (click == 4) {
        setTimeout(function() {
            $('.feedback_g').addClass("bg-success");
            }, 500);
        };
    });
4

2 回答 2

0

需要改进,但这样的事情可以工作:

<button type="button" class="btn btn-outline-dark rounded-circle main_button"></button>

<script>
    var click = 0

    $('.main_button').on('click',function(){
       updateNb();
    });

    $('.main_button').dblclick(function(){
        updateNb(); 
    });

    $('.main_button').on('click',function() {
        if (click == 4) {
            setTimeout(function() {
             if (click == 4) {
                $('.feedback_g').addClass("bg-success");
            }

            click = 0;


                }, 500);
            };
        });


    function updateNb(){
        if(click > 4){
            click = 0;
        }
        click++;
    }
</script>
于 2018-06-25T08:02:41.910 回答
0

按下 4 次后禁用按钮 - 添加

$('.main_buton').prop("disabled",true);

完整代码:

var click = 0

$('.main_button').on('click',function(){
    click = click + 1;
});

$('.main_button').dblclick(function(){
    click = click + 1;
});

$('.main_button').on('click',function() {
    if (click == 4) {
        setTimeout(function() {
            $('.feedback_g').addClass("bg-success");
            }, 500);
        $('.main_buton').prop("disabled",true);
        };
    });
于 2018-06-25T07:55:41.360 回答