"We are back" « oc.at

REQ: JavaScript-Clock

Fabsko 09.02.2006 - 20:52 770 10
Posts

Fabian1983

Here to stay
Registered: Mar 2003
Location: zwanzig
Posts: 1572
Hallo!

Ja, ich hab gegoogelt, ich hab auch fast was gefunden. Nur leider hat sich da ein Problem ergeben.
Ich brauche eine Uhr, die mir die Zeit von Vancouver ausgibt, d.h. GMT-8, oder in unserem Fall GMT+1-9. :D
Da ich von JavaScript allerdings keine Ahnung hab, war's mir nicht möglich, die Zeitzone zu ändern.
Also hätt ich eine Bitte an euch:
Kann mir wer "schnell" so eine Uhr schreiben ? Soll einfach nur ein Text sein, der wie folgt aussieht:
Code: PHP
hh:mm:ss

Ohne jegliche Farben, ohne Zeiger oder sonstwas. Wär das möglich ? Und am besten mit der Schriftart Verdana und der Schriftgröße "1" (aus Dreamweaver - ist das 10 ?), oder kann ich das dann eh selber ändern ?

Vielen Dank schon mal, ich bin mir sicher das ist für viele ein Kinderspiel. :D

MfG, Fabsko

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4479

freezer90

Ex SE Student
Avatar
Registered: Aug 2002
Location: Linz
Posts: 768
hi!

Code:
<html>

  <head>
    <title>Clock</title>
      <script language="javascript">   
        <!--  
          function uhr() 
          {
            var time = new Date();
            var D = time.getDate();
            var M = time.getMonth();
            var Y = time.getYear();
            var h = time.getHours();
            var m = time.getMinutes();
            var s = time.getSeconds();
            
            if(D<10) D = "0"+D;
            if(M<10) M = "0"+M;
            
            if(h<10) h = "0"+h;       
            if(m<10) m = "0"+m;
            if(s<10) s = "0"+s;
            
            window.document.anzeige.clock.value= D+'.'+M+'.'+Y+'   '+h+':'+m+':'+s;
            window.setTimeout("uhr()", 1000);
          }
        -->
      </script>
  </head>
  
  <body bgcolor="#FFFFFF" onLoad="javascript: uhr();">
   <form name="anzeige">
    <input type="text" id="clock" name="clock" value="">
   </form>
  </body>
  
</html>

funzt in ie+ff ...

*hth*

lg
freezer90

edit:
keine ahnung, warum bei onLoad ein space in javascript ist ... da gehört auf jeden fall keins rein ;)
Bearbeitet von freezer90 am 09.02.2006, 22:21

Fabian1983

Here to stay
Registered: Mar 2003
Location: zwanzig
Posts: 1572
http://wayne.funpic.de/ <-- bei mir funktioniert da garnichts ?
Hätt eigentlich alles übernommen. Hab das "onLoad="java script: uhr();">" im <body>-tag und auch sonst alles kopiert.
Danke aber schonmal für die Mühe. :)
Bearbeitet von Fabian1983 am 09.02.2006, 22:46

freezer90

Ex SE Student
Avatar
Registered: Aug 2002
Location: Linz
Posts: 768
Zitat von Fabsko
onLoad="java script: uhr();"

da gehört auch onLoad="javascript: uhr();" ... also KEIN SPACE im Wort "javascript".

kA warum da eins ist. wenn ich meinen beitrag editieren will, ist da keins :confused:

lg
freezer90

edit: SCHON WIEDER ZUM ******** NOCH MAL! _ICH_ mach da kein space ins wort rein ...

Fabian1983

Here to stay
Registered: Mar 2003
Location: zwanzig
Posts: 1572
Versteh. Hab nicht ganz verstanden, was du mit deinem Edit ausdrücken wolltest, sorry. ;)

Werd's gleich ausprobieren! :)

#edit#

Oke, die Zeit funktioniert, danke :D
Nur wie bring ich sie auf GMT-8, d.h. unsere Zeit minus 9 Stunden ?

MfG, Fabsko

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4479
Das macht aus irgendeinem grund die forumsoftware, soll vermutlich gegen XSS o.ae. schuetzen. ignorier es einfach, wir wissen eh alle.

Der Witz ist: du braucht das javascript nicht im onload.

<body onload="uhr();"> reicht aus

freezer90

Ex SE Student
Avatar
Registered: Aug 2002
Location: Linz
Posts: 768
so habs umgeschrieben :)

Code:
<html>

  <head>
    <title>Clock</title>
      <script language="javascript">   
        <!--  
          function uhr() 
          {
            var delay = 9;
            var time  = new Date();
            var temp  = time.getTime();
            
            time.setTime(temp + delay*60*60*1000);

            var D = time.getDate();
            var M = time.getMonth();
            var Y = time.getYear();
            var h = time.getHours();
            var m = time.getMinutes();
            var s = time.getSeconds();
            
            if(D<10) D = "0"+D;
            if(M<10) M = "0"+M;
            
            if(h<10) h = "0"+h;       
            if(m<10) m = "0"+m;
            if(s<10) s = "0"+s;
            
            window.document.anzeige.clock.value= D+'.'+M+'.'+Y+'   '+h+':'+m+':'+s;
            window.setTimeout("uhr()", 1000);
          }
        -->
      </script>
  </head>
  
  <body bgcolor="#FFFFFF" onLoad="uhr();">
   <form name="anzeige">
    <input type="text" id="clock" name="clock" value="">
   </form>
  </body>
  
</html>

bei delay kannst jetzt die zeitverschiebung eintragen ... (dabei geht er aber von der lokalen zeit aus!)

lg
freezer90

Fabian1983

Here to stay
Registered: Mar 2003
Location: zwanzig
Posts: 1572
Das ist aber leider nicht so praktisch. Denn ich will das in etwa so auf die Website stellen:
"in Kanada ist es <Uhrzeit>".

Wenn es die Kanadier lesen, dann ist es bei denen dann aber GMT-8-9 (was theoretisch ja eigentlich garnicht geht). Versteh ich das richtig ?

freezer90

Ex SE Student
Avatar
Registered: Aug 2002
Location: Linz
Posts: 768
hi!

also ich hab das skript jetzt nochmal umgeschrieben ;) jetzt müsste es von überall funktionieren! also er liest jetzt die zeitzone aus, die am pc eingesellt ist.

Code:
<head>
    <title>Clock</title>
      <script language="javascript">   
        <!--  
          function uhr() 
          {
            var timeZone = -8;

            var time   = new Date();
            var temp   = time.getTime();
            var offset = time.getTimezoneOffset() / 60;
            var delay  = offset + timeZone;
            
            time.setTime(temp + delay*60*60*1000);

            var D = time.getDate();
            var M = time.getMonth();
            var Y = time.getYear();
            var h = time.getHours();
            var m = time.getMinutes();
            var s = time.getSeconds();
            
            if(D<10) D = "0"+D;
            if(M<10) M = "0"+M;
            
            if(h<10) h = "0"+h;       
            if(m<10) m = "0"+m;
            if(s<10) s = "0"+s;
            
            window.document.anzeige.clock.value= D+'.'+M+'.'+Y+'   '+h+':'+m+':'+s;
            window.setTimeout("uhr()", 1000);
          }
        -->
      </script>
  </head>
  
  <body bgcolor="#FFFFFF" onLoad="uhr();">
   <form name="anzeige">
    <input type="text" id="clock" name="clock" value="">
   </form>
  </body>
  
</html>

erklärung: bei "var timeZone = -8" kannst jetzt die gewünschte zeitzone von GMT aus gesehen eintragen (also für unsere zeit müsstest 1 eintragen :))

*hth*

lg
freezer90

Fabian1983

Here to stay
Registered: Mar 2003
Location: zwanzig
Posts: 1572
Dankeschön! Jetzt funktioniert alles. :)
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz