zoukankan      html  css  js  c++  java
  • jQuery 选择城市,显示对应的即时时区时间

    因客户需要,我们CRM系统中,jQuery 弄个时区插件

    如图:

     HTML:

    <div id="cityDate">
                    <i class="P_arrow"></i>
                    <h3>
                        <span class="P_n">世界时钟:</span>
                        <span class="P_c">a</span>
                        <span class="P_d">07月21日 周五 16:33:22</span>
                        <span class="P_w">&nbsp;</span>
                        <span class="P_t">&nbsp;</span>
                    </h3>
                    <div class="timeSelect M_scrollBar">
                        <dd>阿布賈,尼日利亞</dd>
    
                    </div>
                    <script language="javascript">
                        $(function(){
                            //所有城市和时间静态输出
                            var cityID = 170; //初始城市,中国,北京
                            var showZone = $.showZone(cityID);
                            $("#cityDate .timeSelect dd").live('click',function(e){
                                cityID = $(this).attr("cityID");
                                $.showZone(cityID);
                            });
                        });
                    </script>
                </div>

    jQuery:

    // 时区城市
    //$(function(){
    //所有城市和时间静态输出
    //var cityID = 170;    //中国,北京
    //var showZone = $.showZone(cityID);
    //$("#cityDate .timeSelect dd").live('click',function(e){
    //    cityID = $(this).attr("cityID");
    //    $.showZone(cityID);
    // });
    //});
    (function ($) {
        $.extend({
            "showZone": function (id) {
    
                var city = new Array(['安道尔 · 安道尔','A','1'],['阿尔及利亚 · 阿尔及尔','A','2'],['阿尔巴尼亚 · 地拉那','A','3'],['奥地利 · 维也纳','A','4'],['澳洲 · 伯斯','H','5'],['澳洲 · 达尔文','I1','6'],['澳洲 · 布里斯本','K','7'],['澳洲 · 墨尔本','K','8'],['澳洲 · 昆士兰','K','9'],['澳洲 · 悉尼','K','10'],['澳洲 · 阿得雷德','K1','11'],['阿联酋 · 阿布达比','D','12'],['阿联酋 · 杜拜','D','13'],['阿曼 · 马斯喀特','D','14'],['阿富汗 · 喀布尔','D1','15'],['阿根廷 · 布宜洛斯艾利斯','P','16'],['阿拉斯加 · 安克雷奇','V','17'],['埃尼威托克','Y','18'],['埃及 · 开罗','B','19'],['埃塞俄比亚','C','20'],['比利时 · 布鲁塞尔','A','21'],['波兰 · 华沙','A','22'],['波札那 · 嘉柏隆','B','23'],['保加利亚 · 索非亚','B','24'],['巴基斯坦 · 伊斯兰堡','E','25'],['巴基斯坦 · 喀拉蚩','E','26'],['巴西 · 巴西利亚','P','27'],['巴西 · 里约热内卢','P','28'],['巴巴多斯 · 布里奇敦','Q','29'],['巴布亚新畿内亚','K','30'],['百慕达 · 哈密尔顿','Q','31'],['玻利维亚 · 拉巴斯','Q','32'],['巴拉圭 · 亚松森','Q','33'],['巴哈马 · 拿骚','R','34'],['巴拿马 · 巴拿马城','R','35'],['冰岛 · 雷克雅未克','Z','36'],['北韩 · 平壤','I','37'],['德国 · 柏林','A','38'],['丹麦 · 哥本哈根','A','39'],['德国 · 法兰克福','A','40'],['德国 · 汉堡','A','41'],['达累斯萨拉姆','C','42'],['多米尼加共和国','Q','43'],['多米尼克 · 罗索','Q','44'],['俄罗斯 · 莫斯科','C','45'],['厄瓜多尔 · 基多','R','46'],['法国 · 里昂','A','47'],['法国 · 巴黎','A','48'],['芬兰 · 赫尔辛基','B','49'],['佛得角 · 普拉亚','N','50'],['菲律宾 · 马尼拉','H','51'],['斐济 · 苏瓦','M','52'],['刚果 · 布拉柴维尔','A','53'],['哥伦比亚 · 波哥大','R','54'],['古巴 · 哈瓦那','R','55'],['哥斯达黎加 · 圣荷塞','S','56'],['甘比尔群岛','V','57'],['荷兰 · 阿姆斯特丹','A','58'],['荷兰 · 罗索','A','59'],['荷属安的列斯群岛','Q','60'],['洪都拉斯 · 特古西加尔巴','S','61'],['惠森迪岛','K','62'],['捷克 · 布拉格','A','63'],['津巴布韦 · 哈拉雷','B','64'],['柬浦寨 · 金边','G','65'],['基里巴斯共和国','M2','66'],['加拿大 · 纽芬兰省','P1','67'],['加拿大 · 新斯科舍','Q','68'],['加拿大 · 蒙特利尔','R','69'],['加拿大 · 渥太华','R','70'],['加拿大 · 多伦多','R','71'],['加拿大 · 温尼伯','S','72'],['加拿大 · 埃德蒙顿','T','73'],['加拿大 · 温哥华','U','74'],['加纳 · 阿克拉','Z','75'],['喀密隆 · 雅温得','A','76'],['科威特 · 科威特','C','77'],['肯雅 · 奈洛比','C','78'],['卢森堡','A','79'],['黎巴嫩 · 贝鲁特','B','80'],['罗马尼亚 · 布加勒斯特','B','81'],['美国 · 马里兰','R','82'],['美国 · 新泽西','R','83'],['美国 · 纽约','R','84'],['美国 · 费城','R','85'],['美国 · 华盛顿','R','86'],['美国 · 芝加哥','S','87'],['美国 · 亚特兰大','R','88'],['美国 · 波士顿','R','89'],['美国 · 达拉斯','S','90'],['美国 · 休斯敦','S','91'],['美国 · 威斯康辛','S','92'],['美国 · 蒙大拿','T','93'],['美国 · 新墨西哥','T','94'],['美国 · 圣迭戈','T','95'],['美国 · 加利福尼亚','U','96'],['美国 · 拉斯维加斯','U','97'],['美国 · 洛杉机','U','98'],['美国 · 三藩市','U','99'],['美国 · 西雅图','U','100'],['美国 · 夏威夷','W','101'],['美国 · 檀香山','W','102'],['马来西亚 · 吉隆坡','H','103'],['孟加拉 · 达卡','F','104'],['缅甸','F1','105'],['秘鲁 · 利马','R','106'],['摩洛哥 · 卡萨布兰卡','Z','107'],['摩洛哥 · 拉巴特','Z','108'],['莫尔兹比港','K','109'],['墨西哥 · 墨西哥城','S','110'],['尼日利亚 · 阿布贾','A','111'],['挪威 · 奥斯陆','A','112'],['南非 · 开普敦','B','113'],['南非 · 约翰尼斯堡','B','114'],['南韩 · 汉城/首尔','I','115'],['葡萄牙 · 里斯本','Z','116'],['瑞士 · 伯恩','A','117'],['瑞典 · 斯德哥尔摩','A','118'],['瑞士 · 苏黎世','A','119'],['日本 · 扎幌','I','120'],['日本 · 东京','I','121'],['日本 · 大坂','I','122'],['苏丹 · 喀土木','B','123'],['尚比亚 · 路沙卡','B','124'],['塞普路斯 · 尼古西亚','B','125'],['沙特阿拉伯 · 利雅德','C','126'],['斯里兰卡 · 可伦坡','F','127'],['萨摩亚','M1','128'],['圣多明各','Q','129'],['萨尔瓦多 · 圣萨尔瓦多','S','130'],['塞内加尔 · 达喀尔','Z','131'],['斯里巴加湾','H','132'],['土耳其 · 伊斯坦布尔','B','133'],['坦桑尼亚','C','134'],['泰国 · 曼谷','G','135'],['泰国 · 布吉','G','136'],['特林达迪岛','O','137'],['乌干达 · 坎帕拉','C','138'],['乌拉圭 · 蒙得维的亚','P','139'],['威廉斯塔德','Q','140'],['危地马拉 · 危地马拉城','S','141'],['汶莱','H','142'],['西班牙 · 巴塞隆纳','A','143'],['匈牙利 · 布达佩斯','A','144'],['西班牙 · 马德里','A','145'],['希腊 · 雅典','B','146'],['新加坡','H','147'],['新西兰 · 威灵顿','M','148'],['新喀里多尼亚 · 努美阿','L','149'],['新西兰 · 奥克兰','M','150'],['意大利 · 米兰','A','151'],['意大利 · 罗马','A','152'],['以色列 · 耶路撒冷','B','153'],['亚的斯亚贝巴','C','154'],['也门 · 萨那','C','155'],['伊朗 · 德克兰','C1','156'],['印度 · 孟买','E1','157'],['印度 · 加尔各答','E1','158'],['印度 · 新德里','E1','159'],['越南 · 河内','G','160'],['印尼 · 雅加达','G','161'],['牙买加 · 金斯敦','R','162'],['英国 · 阿伯丁','Z','163'],['英国 · 爱丁堡','Z','164'],['英国 · 格拉斯哥','Z','165'],['英国 · 利物浦','Z','166'],['英国 · 伦敦','Z','167'],['英国 · 曼彻斯特','Z','168'],['英国 · 纽卡素','Z','169'],['中国 · 北京','H','170'],['中国 · 重庆','H','171'],['中国 · 广州','H','172'],['中国 · 哈尔滨','H','173'],['中国 · 香港','H','174'],['中国 · 澳门','H','175'],['中国 · 南京','H','176'],['中国 · 上海','H','177'],['中国 · 台北','H','178'],['中国 · 乌鲁木齐','H','179'],['中途岛','X','180'],['智利 · 圣地亚哥','Q','181']);
    
                var zone = new Array(['A','1'],['B','2'],['C','3'],['C1','3.5'],['D','4'],['D1','4.5'],['E','5'],['E1','5.5'],['F','6'],['F1','6.5'],['G','7'],['H','8'],['I','9'],['I1','9.5'],['K','10'],['K1','10.5'],['L','11'],['M','12'],['M1','12.5'],['M2','13'],['N','-1'],['O','-2'],['P','-3'],['P1','-3.5'],['Q','-4'],['R','-5'],['S','-6'],['T','-7'],['U','-8'],['V','-9'],['W','-10'],['X','-11'],['Y','-12'],['Z','0']);
    
                //HTML输出
                var cityHtml = "";
                for(var i=0;i<city.length;i++){
                    cityHtml += "<dd cityID='" + city[i][2] + "'>" + city[i][0] + "</dd>";
                }
                $("#cityDate .timeSelect").html( cityHtml );    //列表输出城市
    
                //得到日期
                function getLocalTime(cityZoneNum) {
                    //if (typeof cityZoneNum !== 'number') return;
                    var d = new Date();
                    var len = d.getTime();
                    var offset = d.getTimezoneOffset() * 60000;
                    var utcTime = len + offset;
    
                    var dZone = new Date(utcTime + 3600000 * cityZoneNum);
    
                    var vYear = dZone.getFullYear();
                    var vMon = dZone.getMonth() + 1;
                    var vDay = dZone.getDate();
                    var h = dZone.getHours();
                    var m = dZone.getMinutes();
                    var se = dZone.getSeconds();
    
                    var P_d = (vMon<10 ? "0" + vMon : vMon)+""+(vDay<10 ? "0"+ vDay : vDay)+"";
                    var P_w = "" + "日一二三四五六".split("")[dZone.getDay()];
                    var P_t = (h<10 ? "0"+ h : h)+":"+(m<10 ? "0" + m : m)+":"+(se<10 ? "0" +se : se);
    
                    //输出时间日期
                    var $P_d = $("#cityDate h3 .P_d");
                    var $P_w = $("#cityDate h3 .P_w");
                    var $P_t = $("#cityDate h3 .P_t");
                    $P_d.text(P_d);
                    $P_w.text(P_w);
                    $P_t.text(P_t);
                }
    
                //选择城市
                var $P_c = $("#cityDate .P_c");
                var $dd = $("#cityDate .timeSelect dd");
                for(var i=0;i<city.length;i++){
    
                    if( city[i][2] == id ){
                        $P_c.text( city[i][0] );    //默认及所选城市输出
    
                        for(var j=0;j<zone.length;j++){
                            if( zone[j][0] == city[i][1] ){
                                var zoneID = zone[j][1];
                                var timeDo = window.setInterval(function(){
                                    getLocalTime(zoneID);
                                },1000);
    
                                //点击选项的同时,结束之前定时器
                                $dd.live('click',function(e){
                                    window.clearInterval(timeDo);
                                    //$("#cityDate h3 .P_d, #cityDate h3 .P_w, #cityDate h3 .P_t").text("---");
                                });
                            }
                        }
                        return false;
                    }else{
                        $P_c.html( "<em style='color:red'>no this cityID</em>" );
                    }
                }
            }
        });
    })(jQuery);

    .



  • 相关阅读:
    Can't connect to X11 window server using 的问题,求解
    自动化运维,让你远离背锅侠
    python netmiko实现cisco网络设备配置备份
    如何备份思科、锐捷、Juniper的配置文件
    网络配置备份。
    使用SecureCRT脚本备份网络设备配置的一点感悟
    網管利器!開源管理系統-LibreNMS
    邮件协议与port
    视频播放技术汇总(列表播放,小窗播放,跨界面播放,播放中网络切换提示)
    android插件式开发资料整理
  • 原文地址:https://www.cnblogs.com/xiangsj/p/5922991.html
Copyright © 2011-2022 走看看