﻿            var timerID ;

            function tzone(os, ds, cl)
            {
                this.ct = new Date(0) ; // datetime
                this.os = os ;        // GMT offset
                this.ds = ds ;        // has daylight savings
                this.cl = cl ;        // font color
            }

            function UpdateClocks()
            {
                var ct = new Array(
                new tzone(-10, 0, 'silver'),
                new tzone(-9, 1, 'silver'),
                new tzone(-8, 1, 'silver'),
                new tzone(-8, 1, 'silver'),
                new tzone(-8, 1, 'silver'),
                new tzone(-8, 1, 'silver'),
                new tzone(-7, 1, 'silver'),
                new tzone(-7, 1, 'silver'),
                new tzone(-7, 0, 'silver'),
                new tzone(-7, 1, 'silver'),
                new tzone(-6, 1, 'silver'),
                new tzone(-6, 1, 'silver'),
                new tzone(-6, 1, 'silver'),
                new tzone(-6, 1, 'silver'),
                new tzone(-6, 1, 'silver'),
                new tzone(-6, 1, 'silver'),
                new tzone(-6, 1, 'silver'),
                new tzone(-6, 1, 'silver'),
                new tzone(-6, 0, 'silver'),
                new tzone(-6, 0, 'silver'),
                new tzone(-6, 0, 'silver'),
                new tzone(-6, 1, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 0, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 0, 'silver'),
                new tzone(-5, 0, 'silver'),
                new tzone(-5, 0, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-5, 0, 'silver'),
                new tzone(-5, 0, 'silver'),
                new tzone(-5, 0, 'silver'),
                new tzone(-5, 0, 'silver'),
                new tzone(-5, 1, 'silver'),
                new tzone(-4, 1, 'silver'),
                new tzone(-4, 1, 'silver'),
                new tzone(-3.5, 1, 'silver'),
                new tzone(-3, 0, 'silver'),
                new tzone(-3, 1, 'silver'),
                new tzone(-3, 1, 'silver'),
                new tzone(-3, 1, 'silver'),
                new tzone(-3, 1, 'silver'),
                new tzone(0, 0, 'silver'),
                new tzone(0, 1, 'silver'),
                new tzone(0, 0, 'silver'),
                new tzone(0, 1, 'silver'),
                new tzone(0, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 0, 'silver'),
                new tzone(+1, 0, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+1, 1, 'silver'),
                new tzone(+2, 0, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 0, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 0, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+2, 1, 'silver'),
                new tzone(+3, 0, 'silver'),
                new tzone(+3, 0, 'silver'),
                new tzone(+3, 1, 'silver'),
                new tzone(+3, 0, 'silver'),
                new tzone(+3, 1, 'silver'),
                new tzone(+3, 0, 'silver'),
                new tzone(+3, 0, 'silver'),
                new tzone(+3, 0, 'silver'),
                new tzone(+3, 0, 'silver'),
                new tzone(+3.5, 1, 'silver'),
                new tzone(+4, 0, 'silver'),
                new tzone(+4.5, 0, 'silver'),
                new tzone(+5, 0, 'silver'),
                new tzone(+5, 0, 'silver'),
                new tzone(+5, 0, 'silver'),
                new tzone(+5, 0, 'silver'),
                new tzone(+5.5, 0, 'silver'),
                new tzone(+5.5, 0, 'silver'),
                new tzone(+5.5, 0, 'silver'),
                new tzone(+5.75, 0, 'silver'),
                new tzone(+6, 0, 'silver'),
                new tzone(+6.5, 0, 'silver'),
                new tzone(+7, 0, 'silver'),
                new tzone(+7, 0, 'silver'),
                new tzone(+7, 0, 'silver'),
                new tzone(+7, 0, 'silver'),
                new tzone(+8, 0, 'silver'),
                new tzone(+8, 0, 'silver'),
                new tzone(+8, 0, 'silver'),
                new tzone(+8, 0, 'silver'),
                new tzone(+8, 0, 'silver'),
                new tzone(+8, 0, 'silver'),
                new tzone(+8, 0, 'silver'),
                new tzone(+8, 0, 'silver'),
                new tzone(+9, 0, 'silver'),
                new tzone(+9, 0, 'silver'),
                new tzone(+9.5, 0, 'silver'),
                new tzone(+10, 1, 'silver'),
                new tzone(+10, 0, 'silver'),
                new tzone(11, 1, 'silver'),
                new tzone(11, 1, 'silver'),
                new tzone(11, 1, 'silver'),
                new tzone(+9.5, 1, 'silver'),
                new tzone(+12, 1, 'silver'),
                new tzone(+12, 1, 'silver'),
                new tzone(+12, 0, 'silver'),
                new tzone(13, 1, 'silver'),
                new tzone(13.75, 1, 'silver'),
                new tzone(+14, 0, 'silver')
                ) ;

                var dt = new Date() ;    // [GMT] time according to machine clock
                var startDST = new Date(dt.getFullYear(), 3, 1) ;

                while (startDST.getDay() != 0)
                    startDST.setDate(startDST.getDate() + 1) ;

                var endDST = new Date(dt.getFullYear(), 9, 31) ;

                while (endDST.getDay() != 0)
                    endDST.setDate(endDST.getDate() - 1) ;

                var ds_active ;        // DS currently active
                if (startDST < dt && dt < endDST)
                    ds_active = 1 ;
                else
                    ds_active = 0 ;
                var printstr = "";

                gmdt = new Date() ;
                for (n=0 ; n<ct.length ; n++) {
                    ct[n].ct = new Date(gmdt.getTime() + ct[n].os * 3600 * 1000) ;
                }                
                document.getElementById("Clockk5").innerHTML = ClockString(ct[5].ct);     //洛杉矶
                document.getElementById("Clockk34").innerHTML = ClockString(ct[34].ct);   //纽约
                document.getElementById("Clockk53").innerHTML = ClockString(ct[53].ct);   //柏林
                document.getElementById("Clockk54").innerHTML = ClockString(ct[54].ct);   //伦敦
                document.getElementById("Clockk123").innerHTML = ClockString(ct[123].ct); //北京
                document.getElementById("Clockk128").innerHTML = ClockString(ct[128].ct); //东京
                timerID = window.setTimeout("UpdateClocks()", 1001);
            }

            //输出时间
            function ClockString(dt)
            {
                var stemp ;
                var dt_year = dt.getUTCFullYear();
                var dt_month = dt.getUTCMonth() + 1;
                var dt_day = dt.getUTCDate();
                var dt_hour = dt.getUTCHours();
                var dt_minute = dt.getUTCMinutes();
                var dt_second = dt.getUTCSeconds();
                dt_year = dt_year.toString();

                if (dt_minute < 10)
                    dt_minute = '0' + dt_minute ;

                if (dt_second < 10)
                    dt_second = '0' + dt_second ;

                //stemp = dt_year + '年' + dt_month + '月' + dt_day + '日';
                //stemp = stemp + ' ' + dt_hour + ":" + dt_minute + ":" + dt_second;
                stemp = dt_hour + ":" + dt_minute + ":" + dt_second;
                
                return stemp ;
            }

window.onload=function(){UpdateClocks();}

