script language="JavaScript"
!-- Begin
var timerRunning = false;
var timezone = "格林尼治标准时间";
var adjust = 0;
function timeCheck(tzone, diff) {
if (timerRunning) {
clearTimeout(updatetime);
timerRunning = false; }
gmtOffset=eval(diff+adjust);
timezone = tzone;
checkDateTime();
}
function checkDateTime () {
var today = new Date();
var year = today.getYear() + 00;
var month = today.getMonth()+1;
var date = today.getDate();
var day = today.getDay();
var hour = today.getHours();
var minute = today.getMinutes();
var second = today.getSeconds();
var lastSat = date - (day+1);
while (lastSat 32) lastSat+=7;
if (lastSat 31) lastSat+=-7;
var firstSat = date - (day+1);
while (firstSat 0) firstSat+=-7;
if (firstSat 1) firstSat+=7;
if ((((month == 4) && (date = firstSat)) || month 4) &&
(month 11 || ((month == 10) && day = lastSat))) adjust += 60;
yourOffset = (new Date()).getTimezoneOffset();
yourOffset = yourOffset + adjust;
var xx = navigator.appName
var xy = navigator.appVersion;
xy = xy.substring(0,1);
if ((xy == 4) && (xx == "Netscape")) yourOffset = yourOffset+adjust;
if ((((month == 4) && (date 20)) || month 4) && (month 11 || ((month == 10) &&
day 30))) adjust -= 60;
ourDifference = eval(gmtOffset - yourOffset);
var half = eval(ourDifference % 60);
ourDifference = Math.round(ourDifference / 60);
hour = eval(hour - ourDifference);
var m = new Array("",
"1","2","3",
"4","5","6",
"7","8","9",
"10","11","12");
var leap = eval(year % 4);
if ((half == -30) || (half == 30)) minute += 30;
if (minute 59) minute -= 60, hour++;
if (minute 0) minute += 60, hour--;
if (hour 23) hour -= 24, date += 1;
if (((month == 4) || (month == 6) ||
(month == 9) || (month == 11)) && (date==31)) date = 1, month ++;
if (((month == 2) && (date 28)) && (leap != 0)) date = 1, month ++;
if ((month == 2) && (date 29)) date = 1, month++;
if (hour 0) hour += 24, date --;
if ((date == 32) && (month == 12)) month = m[1], date = 1, year++;
if (date == 32) date = 1, month++;
if ((date 1) && (month == 1)) month= m[12], date = 31, year--;
if (date 1) date = 31, month --;
if (((month == 4) || (month == 6) ||
(month== 9) || (month == 11)) && (date == 31)) date = 30;
if ((month == 2) && (date 28)) date = 29;
if (((month == 2) && (date 28)) && (leap != 0)) date=28;
for (i=1; i13; i++) {
if (month == i) {
month = m; break;
}
}
var dateTime = hour;
dateTime = ((dateTime 10) ? "0":"") + dateTime;
dateTime = " " + dateTime;
dateTime += ((minute 10) ? ":0" : ":") + minute;
dateTime += ((second 10) ? ":0" : ":") + second;
dateTime += (hour = 12) ? "下午, " : "上午, ";
dateTime += year + "年" + month + "月" + date + "日" ;
document.clock.zonetime.value = dateTime;
document.clock.zonename.value = timezone;
updatetime=setTimeout("checkDateTime()", 900);
timerRunning = true;
}
// End --
/script
body OnLoad="timeCheck(timezone, 0)"
FORM name=clock
当前的时间INPUT size=28 name=zonetime
BRBR当前的地区INPUT size=21 name=zonename BRBR
div style="background-color:#FF0000; width:100px; height:100px;" onmouseover="timeCheck('太平洋', +480)"/div
div style="background-color:#FF00FF; width:100px; height:100px;" onmouseover="timeCheck('夏威夷', +600)"/div
/FORM
/body