Javascript在当天剩下的时间?

时间:2014-12-09 13:58:01

标签: javascript jquery timer countdown

我理解如何在一定程度上(到指定日期,即YYYY-MM-DD)使用倒计时器和日期计时器,但我正在开发一个Web开发大学项目,我希望我的一个网页(JSP文件)具有倒数计时器,其中包含从Web应用程序启动之日起剩余的秒数。

该网页还将包含一个Ajax功能,用户可以点击一个按钮,然后会出现一条随机的激励信息(我知道这段特殊的代码,但它只是为了让您了解我的原因)想要这个倒数计时器)。

3 个答案:

答案 0 :(得分:4)

Moment.js是一个很棒的日期数学库。 http://momentjs.com/

使用Moment,你可以像这样做一个衬里。

<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.8.4/moment.min.js"></script>
<script>
  document.write(moment.duration(moment().add(1, 'day').startOf('day').diff(moment())).asSeconds())
</script>

或更容易理解的版本:

<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.8.4/moment.min.js"></script>
<script>
  var now = moment(),
    tomorrow = moment().add(1, 'day').startOf('day'),
    difference = moment.duration(tomorrow.diff(now))

  document.write(difference.asSeconds())
</script>

答案 1 :(得分:1)

<强>已更新

只需将您从Date.now()获得的Date对象与明天的日期(您从第一个日期对象创建,添加一天)进行比较;

&#13;
&#13;
var actualTime = new Date(Date.now());

var endOfDay = new Date(actualTime.getFullYear(), actualTime.getMonth(), actualTime.getDate() + 1, 0, 0, 0);


var timeRemaining = endOfDay.getTime() - actualTime.getTime();

document.getElementById('timeRemaining').appendChild(document.createTextNode(timeRemaining / 1000 + " seconds or " + timeRemaining / 1000 / 60 / 60 + " hours"));

document.getElementById('dayProgression').value = 1 - (timeRemaining / 1000 / 60 / 60 / 24);
&#13;
<span id="timeRemaining"></span>

<div>
  <span>How much of the day has passed:</span>
  <progress id="dayProgression" value="0"></progress>
</div>
&#13;
&#13;
&#13;

Example JSFiddle

答案 2 :(得分:0)

尝试使用此Javascript代码:

var year = 2015 , month = 5 , day = 15;
var date = new Date();
var enddate = new Date(year , month , day); 

document.write( date - enddate );

您可以为您的网站编辑此代码。