Jquery倒计时源码分享

转自: http://www.jb51.net/article/50184.htm

这是一个基于jquey写的倒计时。当然代码有点小改动,只是改了一下展示效果。
在静态页添加显示倒计时的容器,并引用下面脚本,代入时间参数即可使用。

timeoutDate——到期时间,时间格式为2014/01/01或2014/1/1

D——天
H——小时
M——分钟
S——秒
xs——数字0~9

效果图:


代码展示:
html:
<span id="top_tuan_countdown"></span>

jQuery:
$().ready(function() {
    CcountDown([, , timeoutDate], ['还有 <b><font color="#ff0000" size="4">D</font> 天 </b><b><font color="#ff0000" size="4">H</font> 时 </b><b><font color="#ff0000" size="4">M</font> 分 </b><b><font color="#ff0000" size="4">S</font> 秒 </b><b><font color="#ff0000" size="4">xs</font></b> 到期', '', ''], '#top_tuan_countdown',
    function() {
        $('#top_tuan_countdown').remove()
    });
}) function CcountDown(t, c, _self, fn) {
    function nd(d) {
        return isNaN(d) ? (d ? new Date(d).getTime() : new Date().getTime()) : d * 1000;
    }
    var e = [nd(t[0]), nd(t[1]), nd(t[2])],
    _s = _self,
    b;
    if (t[0] && e[0] > e[1]) {
        $(_s).html(c[1]);
        return;
    } else if (e[1] > e[2]) {
        fn && fn($(_s));
        $(_s).html(c[2]);
        return;
    } (b = function(l) {
        var l = l || (e[2] - e[1]) / 100,
        k = {
            D: l / 36000 / 24,
            H: l / 36000 % 24,
            M: l / 600 % 60,
            S: l / 10 % 60,
            xs: l % 10
        };
        $(_s).html(c[0].replace(/D|H|M|S|xs/g,
        function(m) {
            var n = parseInt(k[m]) + ''
            if (n.length == 1 && m != 'D' && m != 'xs') {
                n = 0 + n;
            }
            return n
        }));
        setTimeout(function() {
            b(l - 1)
        },
        100);
    })()
}


你可能感兴趣的:(Jquery倒计时源码分享)