它是否适用于计时器?

时间:2013-12-13 11:30:27

标签: javascript timer

HTML:

<div id="timer"></div>

使用Javascript:

timer.innerHTML = "100";
var yoursite = "http://explame.com"

var mytimer = document.getElementById("timer")

setInterval(function() {
    mytimer.innerHTML -= 1; 

    if(mytimer.innerHTML == '1') {
        setTimeout(function(){
            location.href=yoursite
        })
    };
}, 1000);

我想创建一个计时器...我的计时器现在正在运行......好:D

1 个答案:

答案 0 :(得分:4)

你可以试试这个:

var timer = 100;
var yoursite = "http://explame.com";
var mytimer = document.getElementById("timer");
mytimer.innerHTML = timer; 

var interval = setInterval(function() {
    timer--;
    mytimer.innerHTML = timer; 

    if (timer == 1) {
        location.href = yoursite;
        window.clearInterval(interval);
    }
}, 1000);

看到它正常工作here

关于代码:

  • 继续在每行末尾使用;;
  • 我使用了一个数字变量来保存计时器计数,因为使用字符串进行算术运算不是最好的做法(也很糟糕)(就像你正在做mydiv.innerHTML -= 1)。要做到这一点,你必须使用一些强制转换函数,因此使用数值var;
  • 更简单
  • 我不明白为什么要使用setTimeOut来致电location.href,所以我将其删除了;
  • 我在整个过程结束时清理了间隔。

希望它有所帮助。祝你好运。