C#代碼:
//算出用戶填寫倒計時
var dtr = remodle.UpdateTime.AddDays(3);
var dt = DateTime.Now;
var t = dtr.Subtract(dt).Duration();
ViewBag.second = t.TotalSeconds;
//注意:這裏有一個小bug -TotalSeconds這個方法返回的是絕對值
js代碼:
$(document).ready(function () {
var intDiff = parseInt($(".countDown").html());
countDown(intDiff);
});
var time;
function countDown(intDiff) {
time = window.setInterval(function () {
var day = 0,
hour = 0,
minute = 0,
second = 0;//時間默認值
if (intDiff > 0) {
day = Math.floor(intDiff / (60 * 60 * 24));
hour = Math.floor(intDiff / (60 * 60)) - (day * 24);
minute = Math.floor(intDiff / 60) - (day * 24 * 60) - (hour * 60);
second = Math.floor(intDiff) - (day * 24 * 60 * 60) - (hour * 60 * 60) - (minute * 60);
} else {
stopcountDown(time);
}
$(".countDown").html(day + '天' + hour + "小時" + minute + "分鐘" + second + "秒");
intDiff--;
}, 1000);
}
function stopcountDown() {
clearInterval(time), function() {
time = setInterval("countDown", 1000);
};
}
html代碼:
<p class="gray-text">剩餘時間:<span class="countDown">@ViewBag.second</span></p>