Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript setInterval反递增倒计时不在零处停止_Javascript_Jquery_Html - Fatal编程技术网

Javascript setInterval反递增倒计时不在零处停止

Javascript setInterval反递增倒计时不在零处停止,javascript,jquery,html,Javascript,Jquery,Html,我正在忙着制作一个红色或蓝色的点击游戏,可以在这里查看: 我的问题是,我通过反递增var countdown进行的倒计时仅在函数key()运行时停止,并且在运行之前,如果超过12秒,倒计时将变为负值 我的Javascript是: var i = 0; var seconds = 0; var countdown = 12; setInterval(function () { $("#counter").html(countdown.toFixed(2)); }, 10); functi

我正在忙着制作一个红色或蓝色的点击游戏,可以在这里查看: 我的问题是,我通过反递增
var countdown
进行的倒计时仅在函数
key()
运行时停止,并且在运行之前,如果超过12秒,倒计时将变为负值
我的Javascript是:

var i = 0;
var seconds = 0;
var countdown = 12;
setInterval(function () {
    $("#counter").html(countdown.toFixed(2));
}, 10);

function play() {
    $("#num").select();
}

function key(e) {
    var code = e.keyCode ? e.keyCode : e.charCode;
    var random = Math.random();
    if (random <= 0.5) {
        $("#RedBlue").css("background-color", "red")
    } else {
        $("#RedBlue").css("background-color", "blue")
    }
    if (code === 86) {
        $("#red").css("background", "#ff4e00");
        setTimeout(function () {
            $("#red").css("background-color", "red")
        }, 500);
        var color = "rgb(255, 0, 0)";
    } else if (code === 66) {
        $("#blue").css("background-color", "#006bff");
        setTimeout(function () {
            $("#blue").css("background-color", "blue")
        }, 500);
        color = "rgb(0, 0, 255)";
    }
    var score = i / seconds;
    var Endscore = (i - 1) / seconds;
    if ($("#RedBlue").css("background-color") != color) {
        alert("You clicked " + i + " times in " + seconds.toFixed(2) + " seconds. your score was                          " + score.toFixed(2));
        document.location.reload(true);
    } else if ($("#RedBlue").css("background-color") == color) {
        $("#score").html("");
        i++;
    }
    if (i == 1) {
        setInterval(function () {
            seconds += 0.01
        }, 10);
        setInterval(function () {
            countdown -= 0.01
        }, 10);
    };
    if (countdown < 0) {
        alert("You clicked " + (parseInt(i) - 1) + " times in 12 seconds. your score was           " + Endscore.toFixed(2));
        document.location.reload(true);
    }
}
var i=0;
var秒=0;
var倒计时=12;
setInterval(函数(){
$(“#counter”).html(countdown.toFixed(2));
}, 10);
函数播放(){
$(“#num”).select();
}
功能键(e){
var代码=e.keyCode?e.keyCode:e.charCode;
var random=Math.random();

如果(random因为您正在更新setInterval中的时间,您应该在那里检查倒计时值是否已达到0

setInterval(function () {
        countdown -= 0.01;
        if (countdown < 0) {
            alert("You clicked " + (parseInt(i) - 1) + " times in 12 seconds. your score was           " + Endscore.toFixed(2));
            document.location.reload(true);
        }
    }, 10);
setInterval(函数(){
倒计时-=0.01;
如果(倒计时<0){
警报(“您在12秒内点击了“+(parseInt(i)-1)+”次。您的分数是“+Endscore.toFixed(2));
文档。位置。重新加载(true);
}
}, 10);
setInterval(function () {
        countdown -= 0.01;
        if (countdown < 0) {
            alert("You clicked " + (parseInt(i) - 1) + " times in 12 seconds. your score was           " + Endscore.toFixed(2));
            document.location.reload(true);
        }
    }, 10);