Перейти к содержимому

Реферальная программа Мегаплана


Скрипт часов UTC

#1 Гость_Jtd_*

Гость_Jtd_*
  • Гости
0

Отправлено 14 Апрель 2009 - 07:24

Здравствуйте!
Передо мной стоит такая задача. Мне нужен скрипт идущих часов для нескольких населённых пунктов с разным пояснымвременем. Я вижу два решения. Или скрешивать PHp с Javascript или использовать javascript с UTC. Так как в программировании я не силён первый вариант мне кажется более сложным и я выбрал второй. Но никак не могу написать необходимый скрипт. Буду благодарен, если мне покажут пример подобного кода.

 

 

  • 0

#2 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 14 Апрель 2009 - 10:35

Вот переделал старый вариант, у меня тут лежал. Отлично работает в IE и FF.
<html>
<head>
<title>Время в разных городах.</title>
<style type="text/css">

.timestyle { position:absolute; font-size:8pt; color:#ffff00; background-color:#006600; }

</style>
<script type="text/javaScript">

var worldtime = new Array()
worldtime[0]="London,0"
worldtime[1]="Berlin,1"
worldtime[2]="Paris,1"
worldtime[3]="Johannesburg,2"
worldtime[4]="Kairo,2"
worldtime[5]="Baghdad,3"
worldtime[6]="Moscow,4"
worldtime[7]="Beijing,8"
worldtime[8]="Hong Kong,8"
worldtime[9]="Perth,8"
worldtime[10]="Tokyo,9"
worldtime[11]="Sydney,11"
worldtime[12]="Azores,-1"
worldtime[13]="Rio de Janheiro,-2"
worldtime[14]="Buenos Aires,-3"
worldtime[15]="Lima,-5"
worldtime[16]="New York,-5"
worldtime[17]="Chicago,-6"
worldtime[18]="Mexico City,-6"
worldtime[19]="Denver,-7"
worldtime[20]="San Francisco,-8"
worldtime[20]="Honolulu,-10"

var hours
var shifthours
var minutes
var seconds
var localhours
var pause=2000
var thisplace
var thisline=""
var showmenu=1

function showtime() {

 for (i=0; i<=worldtime.length-1;i++) {
  thisplace=worldtime[i].split(",")
  thistime= new Date()
  hours=thistime.getUTCHours()
  hours=eval(hours)
  shifthours=eval(thisplace[1])
  localhours=eval(shifthours+hours)
  if (localhours <0) {localhours=24+localhours}
  if (localhours >=24) {localhours=localhours-24}
 
  minutes=thistime.getUTCMinutes()
  seconds=thistime.getUTCSeconds()
 
  if (thisplace[0]=='Delhi') {
   minutes=eval(minutes+30)
   if (minutes>=60) {
	minutes=eval(minutes-60)
	localhours=eval(localhours+1)
   }
  }
  if (eval(minutes) < 10) {minutes="0"+minutes}
  if (eval(seconds) < 10) {seconds="0"+seconds}
  if (eval(localhours) < 10) {localhours="0"+localhours}
  thisline += localhours + ":" + minutes + ":"+seconds + " " + thisplace[0] + "<br>";
 }
  document.getElementById('timediv').innerHTML = thisline;
  thisline="";
  var timer=setTimeout("showtime()",1000);
}
 
function dblclick() {
 if (showmenu==1) {
  document.getElementById('timediv').style.visibility = "visible";
  document.getElementById('timediv').style.left = x;
  document.getElementById('timediv').style.top = y;
  showtime()
 }

 if (showmenu!=1) {
  document.getElementById('timediv').style.visibility = "hidden";
 }

 showmenu=showmenu*-1
}


if (document.layers) {
document.captureEvents(Event.ONDBLCLICK);
}
document.ondblclick=dblclick;

if (document.layers){
 document.captureEvents(Event.MOUSEMOVE);
}

document.onmousemove = handlerMM;

function handlerMM(e){
 try
 {
	x = (document.layers) ? e.pageX : e.clientX;
	y = (document.layers) ? e.pageY : e.clientY;	
 } catch(e){
	x = (document.layers) ? e.pageX : event.clientX;
	y = (document.layers) ? e.pageY : event.clientY;	
 }

}
</script>

<body>
<div style="width: 100%; height: 500px; background: #c6c6c6;">
<div class="timestyle" id="timediv">
</div>
</div>

</body>
</html>

  • 0


Оформление форума – IPBSkins.ru