jQuery:按钮要精确按下X次

时间:2018-06-25 07:51:01

标签: jquery button experimental-design

我正在进行一项实验性任务,要求将按钮精确地按X次。这个想法是,人们需要连续按压4次(按压之间的最大间隔为0.5秒)。现在,在我的代码中,每次单击都会使变量“ click”增加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);
        };
    });

2 个答案:

答案 0 :(得分: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);
        };
    });

答案 1 :(得分:0)

需要改进,但类似的方法可能有效:

SELECT timestamp
FROM gross_profit
GROUP BY timestamp
HAVING SUM(CASE WHEN profit_loss_type = 'nett' THEN 1 ELSE 0 END) = 0
AND SUM(CASE WHEN profit_loss < 0 THEN 1 ELSE 0 END) > 0;