Raz*_*nho 0 html jquery countdowntimer
我正在尝试为日期/时间创建一个简单的倒数计时器.
我目前只有以下几天去脚本工作正常:
<div id="countdown">
today = new Date();
BigDay = new Date("March 29, 2013");
msPerDay = 24 * 60 * 60 * 1000 ;
timeLeft = (BigDay.getTime() - today.getTime());
e_daysLeft = timeLeft / msPerDay;
daysLeft = Math.floor(e_daysLeft);
document.write(daysLeft + " days to go!");
</div>
Run Code Online (Sandbox Code Playgroud)
我现在正在尝试创建一个完整的倒数计时器(包括小时,分钟和秒),并创建了以下脚本.html没有显示在页面上.
var today = new Date();
var BigDay = new Date("29 03 2013, 14:30:00");
var msPerDay = 24 * 60 * 60 * 1000 ;
var timeLeft = (BigDay.getTime() - today.getTime());
var e_daysLeft = timeLeft / msPerDay;
var daysLeft = Math.floor(e_daysLeft);
var e_hrsLeft = (e_daysLeft - daysLeft)*24;
var hrsLeft = Math.floor(e_hrsLeft);
var e_minsLeft = (e_hrsLeft - hrsLeft)*60;
var minsLeft = Math.floor(e_minsLeft);
var e_secsLeft = (e_minsLeft - minsLeft)*1000;
var secsLeft = Math.floor(e_secsLeft);
var timeString = daysLeft + " : " + hrsLeft + " : " + minsLeft + " : " + secsLeft;
$('document').ready(function(){
window.setInterval(function(){
$('#countdown').html(timeString);
}, 1000);
});
Run Code Online (Sandbox Code Playgroud)
我不确定问题可能是什么.第一个脚本包含在html中,第二个脚本是外部js文件.
编辑:html现在显示,但所有值都显示为NaN.
Aru*_*hny 12
除了提到的语法错误之外,还存在逻辑错误,您需要计算超时函数内的剩余时间字符串,否则仅在页面加载时计算值.
$(function(){
var BigDay = new Date("29 Mar 2013, 14:30:00");
var msPerDay = 24 * 60 * 60 * 1000 ;
window.setInterval(function(){
var today = new Date();
var timeLeft = (BigDay.getTime() - today.getTime());
var e_daysLeft = timeLeft / msPerDay;
var daysLeft = Math.floor(e_daysLeft);
var e_hrsLeft = (e_daysLeft - daysLeft)*24;
var hrsLeft = Math.floor(e_hrsLeft);
var e_minsLeft = (e_hrsLeft - hrsLeft)*60;
var minsLeft = Math.floor(e_minsLeft);
var e_secsLeft = (e_minsLeft - minsLeft)*60;
var secsLeft = Math.floor(e_secsLeft);
var timeString = daysLeft + " : " + hrsLeft + " : " + minsLeft + " : " + secsLeft;
$('#countdown').html(timeString);
}, 1000);
})
Run Code Online (Sandbox Code Playgroud)
演示:小提琴