zoukankan      html  css  js  c++  java
  • 【小记】-009--时间戳转日期/一个基于JQ 的倒计时插件

    时间戳转日期

    getMyDate: function (nS) {
        return new Date(parseInt(nS) * 1000).toLocaleString().replace(/[u4e00-u9fa5]/g,''); 
        //(2018/10/30 5:02:23)
    }
    getMyDate: function (nS) {
        return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:d{1,2}$/,' ');
        //(2018/10/30 上午5:02:23)
    }

    倒计时插件

    HTML

    <div id="fnTimeCountDown" data-end="{$start_time.start_time}">
            <div>
                <span style="vertical-align:middle">距离大会开幕还有</span>
                <!-- <span class="bigSize year">00</span>年 -->
                <p>
                    <span class="bigSize month">00</span><span class="bigSize day">00</span><span class="bigSize hour">00</span><span class="bigSize mini">00</span><span class="bigSize sec">00</span></p>
            </div>
            <!-- <span class="hm">000</span> -->
        </div>

    JS

    <script>
        $.extend($.fn, {
            // 倒计时
            fnTimeCountDown: function (d) {
                var $this = $(this);
                var o = {
                    hm: $this.find(".hm"),
                    sec: $this.find(".sec"),
                    mini: $this.find(".mini"),
                    hour: $this.find(".hour"),
                    day: $this.find(".day"),
                    month: $this.find(".month"),
                    year: $this.find(".year")
                };
                var f = {
                    haomiao: function (n) {
                        if (n < 10) return "00" + n.toString();
                        if (n < 100) return "0" + n.toString();
                        return n.toString();
                    },
                    zero: function (n) {
                        var _n = parseInt(n, 10);//解析字符串,返回整数
                        if (_n > 0) {
                            if (_n <= 9) {
                                _n = "0" + _n
                            }
                            return String(_n);
                        } else {
                            return "00";
                        }
                    },
                    dv: function () {
                        //d = d || Date.UTC(2050, 0, 1); //如果未定义时间,则我们设定倒计时日期是2050年1月1日
                        var _d = $this.data("end") || d;
                        var now = new Date(),
                            endDate = new Date(_d);
                        //现在将来秒差值
                        //alert(future.getTimezoneOffset());
                        var dur = (endDate - now.getTime()) / 1000,
                            mss = endDate - now.getTime(),
                            pms = {
                                hm: "000",
                                sec: "00",
                                mini: "00",
                                hour: "00",
                                day: "00",
                                month: "00",
                                year: "0"
                            };
                        if (mss > 0) {
                            pms.hm = f.haomiao(mss % 1000);
                            pms.sec = f.zero(dur % 60);
                            pms.mini = Math.floor((dur / 60)) > 0 ? f.zero(Math.floor((dur / 60)) % 60) : "00";
                            pms.hour = Math.floor((dur / 3600)) > 0 ? f.zero(Math.floor((dur / 3600)) % 24) : "00";
                            pms.day = Math.floor((dur / 86400)) > 0 ? f.zero(Math.floor((dur / 86400)) % 30) : "00";
                            //月份,以实际平均每月秒数计算
                            pms.month = Math.floor((dur / 2629744)) > 0 ? f.zero(Math.floor((dur / 2629744)) % 12) : "00";
                            //年份,按按回归年365天5时48分46秒算
                            pms.year = Math.floor((dur / 31556926)) > 0 ? Math.floor((dur / 31556926)) : "0";
                        } else {
                            pms.year = pms.month = pms.day = pms.hour = pms.mini = pms.sec = "00";
                            pms.hm = "000";
                            //alert('结束了');
                            return;
                        }
                        return pms;
                    },
                    ui: function () {
                        if (o.hm) {
                            o.hm.html(f.dv().hm);
                        }
                        if (o.sec) {
                            o.sec.html(f.dv().sec);
                        }
                        if (o.mini) {
                            o.mini.html(f.dv().mini);
                        }
                        if (o.hour) {
                            o.hour.html(f.dv().hour);
                        }
                        if (o.day) {
                            o.day.html(f.dv().day);
                        }
                        if (o.month) {
                            o.month.html(f.dv().month);
                        }
                        if (o.year) {
                            o.year.html(f.dv().year);
                        }
                        setTimeout(f.ui, 1);
                    }
                };
                f.ui();
            },
            // 时间戳转日期
            getMyDate: function (nS) {
                return new Date(parseInt(nS) * 1000).toLocaleString().replace(/[u4e00-u9fa5]/g, '');
            }
    
        });
        var str = '<?php  echo json_encode($start_time) ?>'
        var startTime = JSON.parse(str).start_time
        $("#fnTimeCountDown").fnTimeCountDown(startTime);
    
    </script>
  • 相关阅读:
    左孩子右兄弟的字典树
    UVA 1401 Remember the Word
    HDOJ 4770 Lights Against Dudely
    UvaLA 3938 "Ray, Pass me the dishes!"
    UVA
    Codeforces 215A A.Sereja and Coat Rack
    Codeforces 215B B.Sereja and Suffixes
    HDU 4788 Hard Disk Drive
    HDU 2095 find your present (2)
    图的连通性问题—学习笔记
  • 原文地址:https://www.cnblogs.com/asenper/p/10740480.html
Copyright © 2011-2022 走看看