我正在使用jQuery倒计时:http://keith-wood.name/countdown.html
此脚本的示例用法是:
$(selector).countdown({since: new Date(2010, 12-1, 25)});
你必须设置完整的日期,如果我只有几秒钟的总时间怎么办?我的意思是我想从50000秒开始倒计时并自动将其转换为几天:小时:秒?
答案 0 :(得分:2)
我刚刚写了一个小函数来为你做一个计数器,只是想要你有更多的控制权。
countDown($('#selector'), 300);
function countDown(selector, seconds){
var oneSecond = 1;
var passedSeconds = 0;
var timeLeft = 0;
var interval = setInterval(
function(){
passedSeconds += oneSecond;
timeLeft = seconds-passedSeconds;
if(timeLeft > 0 ){
selector.text(getTimer(timeLeft));
}else{
selector.text('Time out');
clearInterval(interval);
}
},
oneSecond*1000);
}
function getTimer(timeLeft){
var litteralDuration = '';
var s = parseInt(timeLeft);
var d = Math.floor(s / 86400);
s %= 86400;
var h = Math.floor(s / 3600);
s %= 3600;
var m = Math.floor(s / 60);
s %= 60;
if(d > 0){
litteralDuration += (d == 1) ? '1 D ' : d + ' Ds ' ;
}
if(h > 0){
litteralDuration += (h == 1) ? '1 H ' : h + ' Hs ' ;
}
if(m > 0){
litteralDuration += (m == 1) ? '1 M ' : m + ' Ms ' ;
}
if(s > 0){
litteralDuration += (s == 1) ? '1 S ' : s + ' Ss ' ;
}
return litteralDuration;
}
这是一个JS小提琴: Fiddle
希望有所帮助
答案 1 :(得分:1)
试试这个:
var now = new Date();
var later = new Date(now.getTime() + 50000000); // 50000s == 50000000ms
$('#countdown').countdown({until: later});
答案 2 :(得分:1)
您必须获取当前日期并为其添加50000秒。你可以像下面这样做
$("#countdown").countdown({
until: new Date(new Date().getTime() + (50000 * 1000))
});
<强> JSFiddle Example 强>