• Javascript 时间 倒计时


    更新一下时间倒计时插件(jQUery)

     1 $.fn.genTimer = function (e) {
     2     function u(e) {
     3     var t = Math.floor(e / n),
     4         r = Math.floor((e - t * n) / 36e5),
     5         i = Math.floor((e - t * n - r * 1e3 * 60 * 60) / 6e4),
     6         s = Math.floor((e - t * n - r * 1e3 * 60 * 60 - i * 1e3 * 60) / 1e3);
     7     return {
     8         hours: ("0" + r).slice(-2),
     9         minutes: ("0" + i).slice(-2),
    10         seconds: ("0" + s).slice(-2),
    11         dates: t
    12     }
    13     }
    14     if (this.data("handled")) return this;
    15     this.data("handled", !0);
    16     var t = {
    17     beginTime: new Date,
    18     day_label: "day",
    19     days_label: "days",
    20     unitWord: {
    21         hours: ":",
    22         minutes: ":",
    23         seconds: ""
    24     },
    25     type: "",
    26     callbackOnlyDatas: !1
    27     },
    28     n = 864e5,
    29     r = $.extend({}, t, e),
    30     i = this;
    31     r.targetTime = r.targetTime.replace(/\-/g, "/");
    32     r.targetTime = isNaN(r.targetTime) ? r.targetTime : parseInt(r.targetTime);37     var s = new Date(r.targetTime) - new Date(r.beginTime),
    38     o = function () {
    39         if (s < 0) {
    40         r.callback.call(i, r.callbackOnlyDatas ? {
    41             hours: "00",
    42             minutes: "00",
    43             seconds: "00",
    44             dates: 0
    45         } : "00" + r.unitWord.hours + "00" + r.unitWord.minutes + "00");
    46         clearInterval(i.interval)
    47         } else {
    48         var e = u(s);
    49         if (r.callbackOnlyDatas) r.callback.call(i, e);
    50         else if (r.type == "day") {
    51             s >= n * 2 ?
    52             r.callback.call(i, '<span class="day_count">' + e.dates + '</span><span class="day">' + r.days_label + '</span><span class="day_seconds">' + e.hours + r.unitWord.hours + e.minutes + r.unitWord.minutes + e.seconds + r.unitWord.seconds + "</span>")
    53             : (
    54             s >= n ?
    55             r.callback.call(i, '<span class="day_count">' + e.dates + '</span><span class="day">' + r.day_label + '</span><span class="day_seconds">' + e.hours + r.unitWord.hours + e.minutes + r.unitWord.minutes + e.seconds + r.unitWord.seconds + "</span>")
    56             : r.callback.call(i, '<span class="seconds">' + e.hours + r.unitWord.hours + e.minutes + r.unitWord.minutes + e.seconds + r.unitWord.seconds + "</span>")
    57             );
    58         }
    59         else if (r.type == "diffNoDay") {
    60             var t = e.hours;
    61             s >= n && (t = Number(e.dates * 24) + Number(e.hours));
    62             r.callback.call(i, '<span class="hours">' + t + '</span><span class="miniutes">' + r.unitWord.hours + e.minutes + '</span><span class="senconds">' + r.unitWord.minutes + e.seconds + r.unitWord.seconds + "</span>")
    63         } else {
    64             var t = e.hours;
    65             s >= n && (t = Number(e.dates * 24) + Number(e.hours));
    66             r.callback.call(i, '<span class="seconds">' + t + r.unitWord.hours + e.minutes + r.unitWord.minutes + e.seconds + r.unitWord.seconds + "</span>")
    67         }
    68         }
    69         s -= 1e3
    70     };
    71     i.interval = setInterval(o, 1e3);
    72     o();
    73     return this
    74 };

    调用:

    1 $(this).genTimer({
    2     beginTime: new Date(),//开始时间
    3     targetTime: new Date(),//结束时间
    4     type: "day",
    5     callback: function (e) {
    6         this.html(e)
    7     }
    8 })

    附加:一个C#获取现在到1970-1-1毫秒算法

    1  string times = (DateTime.Now.Subtract(DateTime.Parse("1970-1-1")).TotalMilliseconds - (8 * 60 * 60 * 1000)).ToString("F0");

  • 相关阅读:
    数据表分区, 全新分区
    SSIS基础设计最佳实践
    数据表分区, 普通表转分区表
    关于游标[二]
    弹窗代码汇集
    关于分页显示中的换行显示原理代码
    C# 装箱和拆箱[整理]
    insert into tablename select * from tablename与Select * into tablename from tablename 比较[转]
    SQL Server应用程序中的高级SQL注入
    CHARINDEX使用【转】
  • 原文地址:https://www.cnblogs.com/baily/p/2442353.html
Copyright © 2020-2023  润新知