Countdown.js调整

时间:2014-02-16 23:08:11

标签: javascript javascript-framework

我正在使用countdown.js:http://blog.smalldo.gs/2013/12/create-simple-countdown/

我没有使用JavaScript的经验,我需要将倒计时设置为从现在开始的一周,即7天,即2014年2月24日。

我该如何改变这个?

以下是我在html中的内容:

<head>
<script src="/js/countdown.js"></script>  
</head>

<h1 id="countdown-holder"></h1>  

<script>  
  var clock = document.getElementById("countdown-holder")  
    , targetDate = new Date(2050, 00, 01); // Jan 1, 2050;  

  clock.innerHTML = countdown(targetDate).toString();  
  setInterval(function(){  
    clock.innerHTML = countdown(targetDate).toString();  
  }, 1000);  
</script>  

3 个答案:

答案 0 :(得分:1)

  var newDate = new Date();
  var numberOfDaysToAdd = 7;
  newDate.setDate(newDate.getDate() + numberOfDaysToAdd); 

  var clock = document.getElementById("countdown-holder")  
    , targetDate = newDate;  

  clock.innerHTML = countdown(targetDate).toString();  
  setInterval(function(){  
    clock.innerHTML = countdown(targetDate).toString();  
  }, 1000); 

这将从7天开始。它将在今天的日期增加7天。

答案 1 :(得分:1)

只需更改targetDate = new Date(2050, 00, 01);
targetDate = new Date(2014, 01, 24);
日期构造函数需要年,月-1,日。

这是针对固定日期(例如2014年2月24日),而不是相对日期(例如&#34;从今天开始的一周和#34;)。

答案 2 :(得分:1)

尝试这样的事情,这里也是js小提琴:

http://jsfiddle.net/rnewsome/D3tPR/

在页面上需要一个html元素,如下所示:

<div id="counter" />

var StartTime = new Date();
var counter = document.getElementById("counter");
var timeout = null;

function GetCount() {
    var timeToExpire = new Date(StartTime);
    timeToExpire.setDate(timeToExpire.getDate() + 7);

    var ms = timeToExpire.getTime() - new Date().getTime();
    console.log(ms + "ms", (ms/1000) + "s");

    return ms;
};

function UpdateUI() {
    var timeRemaining = parseInt(GetCount() / 1000);
    counter.innerHTML = timeRemaining + " seconds"; 
    if(timeRemaining > 0) {
        timeout = setTimeout(UpdateUI , 1000); // Update Counter every second
    }
}

// Init
UpdateUI();