一個根據時間差的秒數的倒計時


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>

發佈了43 篇原創文章 · 獲贊 44 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章