冻结HTMl但保持JavaScript运行

时间:2014-03-01 12:41:30

标签: javascript jquery html

当timediff为< = 0时,我怎么能在00:00冻结html,但javascript会倒数减去所以当timdiff< = -90000时可以删除它?

<script>
    var timer1;
    function cdtd1() {
        var sad1 = new Date();
        var dolazak1 = new Date(sad1.getFullYear(),sad1.getMonth(),sad1.getDate(),13,37,00);
        var timeDiff1 = dolazak1.getTime() - sad1.getTime();
        if (timeDiff1 <= -90000) {

            $("#Box1").remove();
        }

            var sekunde1 = Math.floor(timeDiff1 / 1000);
            var minute1 = Math.floor(sekunde1 / 60);
            var sati1 = Math.floor(minute1 / 60);
            var dani1 = Math.floor(sati1 / 24);
            sati1 %= 24;
            minute1 %= 60;
            sekunde1 %= 60;

            $("#dani1Box").html(dani1);
            $("#sati1Box").html(sati1 + ':');
            $("#Ispis1").html('SOME TEXT '+ minute1 + ':' + sekunde1);
            $("#sekunde1Box").html(sekunde1);
            $("#timeDiff1").html(timeDiff1);


            timer1 = setTimeout(cdtd1, 1000);
        }

        $(document).ready(function() {
             cdtd1();
        });
        </script>

这是html,它全部放在一个间距为

的框中

HTML

<div id="Box1">
    <h1 style="font-family:Helvetica;color:#FFFFFF;font-size:5px;">&nbsp;</h1>
    <div id="Ispis1"></div>
    </div>

2 个答案:

答案 0 :(得分:2)

我对jQuery的工作方式不太熟悉,但我猜测以下是你改变HTML的地方

$("#dani1Box").html(dani1);
$("#sati1Box").html(sati1 + ':');
$("#Ispis1").html('SOME TEXT '+ minute1 + ':' + sekunde1);
$("#sekunde1Box").html(sekunde1);
$("#timeDiff1").html(timeDiff1);

假设情况就是这样,那么就把它变成

if(timeDiff1 >= 0){
    $("#dani1Box").html(dani1);
    $("#sati1Box").html(sati1 + ':');
    $("#Ispis1").html('SOME TEXT '+ minute1 + ':' + sekunde1);
    $("#sekunde1Box").html(sekunde1);
    $("#timeDiff1").html(timeDiff1);
}

然后,一旦计时器低于零,就会跳过这些。

答案 1 :(得分:0)

这应该有效

if(timeDiff1 <= 0){
        $("#Ispis1").html('SOME TEXT 0:0');
    }