作家
登录

根据地区不同显示时间的javascript代码

作者: 来源:www.28hudong.com 2013-03-30 03:21:01 阅读 我要评论

by tingting <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; i<13; 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> <BR><BR>当前的地区<INPUT size=21 name=zonename> <BR><BR> <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>

  推荐阅读

  增强的 JavaScript 的 trim 函数的代码

复制代码 代码如下:String.prototype.trim=function(){ var _argument = arguments[0] || " "; var _re= new RegExp("(^"+_argument+"*)|("+_argument+"*$)","g"); // 区分大小写 return this.replace(_re,"");>>>详细阅读


本文标题:根据地区不同显示时间的javascript代码

地址:http://www.17bianji.com/kaifa2/JS/30203.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)