kostenloser Webspace werbefrei: lima-city


SVG mit JavaScript

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    robin

    Kostenloser Webspace von robin

    robin hat kostenlosen Webspace.

    ich hab da ein problem: http://robin.lima-city.de/avatar-uhr.htm
    ich möchte, dass die uhr da die aktuelle zeit als startwert bekommt. scheinbar wird mein skript gar nicht erst ausgeführt.

    das ist die svg-datei dazu: http://robin.lima-city.de/avatar-uhr.svg

    was muss ich ändern?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. function start(){
     [...]
     var document = evt.getTarget().getOwnerDocument();
     [...]
    }


    evt ist doch gar nicht definiert... Deshalb wirft es einen Error und alles was drunter ist, wird nicht ausgeführt.

    Ryan


    Beitrag geändert: 16.5.2008 21:24:08 von ryanblack
  4. Autor dieses Themas

    robin

    Kostenloser Webspace von robin

    robin hat kostenlosen Webspace.

    doch doch evt.getTarget() ist für das event - ich wollt ja onload
    finde ich so in jeder anleitung und in jedem buch
    also an evt kanns nich liegen
  5. Hmmm...

    Kann doch gar nicht sein. Nicht mal in SelfHTML steht etwas über evt -.- . Es gibt auch keine Funktion namens getStyle() in JavaScript.

    Vll benutzt du irgendein JavaScript Framework? Prototype? jQuery? Mootools? Wenn ja: Die Framework-Javascript Datei musst du auch einbinden.

    Ryan

    P.S. Variablen können nicht im String eingebunden werden wie in PHP. Sie müssen per + eingebunden werden, also:

    stdzeig.setAttribute(\'transform\',\'rotate(h,75,75)\');
    minzeig.setAttribute(\'transform\',\'rotate(m,75,75)\');
    sekzeig.setAttribute(\'transform\',\'rotate(s,75,75)\');

    ist falsch

    stdzeig.setAttribute(\'transform\',\'rotate(\'+h+\',75,75)\');
    minzeig.setAttribute(\'transform\',\'rotate(\'+m+\',75,75)\');
    sekzeig.setAttribute(\'transform\',\'rotate(\'+s+\',75,75)\');

    ist richtiger

    //edit:
    Beim näheren Hinschauen hab ich ein paar kleine logische Fehler entdeckt, so lautet die Funktion richtig und es funktioniert auch ;) :

    <script type=\"text/javascript\">
      <![CDATA[
       function start(){
        var stdzeig = document.getElementById(\'std\');
        var minzeig = document.getElementById(\'min\');
        var sekzeig = document.getElementById(\'sek\');
    
        var jetzt = new Date();
        var h = 360/24*jetzt.getHours();
        var m = 360/60*jetzt.getMinutes();
        var s = 360/60*jetzt.getSeconds();
    
        stdzeig.setAttribute(\'transform\',\'rotate(\'+h+\',75,75)\');
        minzeig.setAttribute(\'transform\',\'rotate(\'+m+\',75,75)\');
        sekzeig.setAttribute(\'transform\',\'rotate(\'+s+\',75,75)\');
       }
      ]]>
      </script>

    * document musst du nicht definieren.
    * Der Attribut \"transform\" kommt wohl nicht in style rein.

    Wenn du eine Uhr machen willst, musst du jede Sekunde die Funktion start() ausführen lassen ;) .

    Beitrag geändert: 17.5.2008 11:27:44 von ryanblack
  6. Autor dieses Themas

    robin

    Kostenloser Webspace von robin

    robin hat kostenlosen Webspace.

    ich werd das nachher mal probieren und das ergebnis mitteilen
    ich hab auch nicht bei selfhtml geschaut sonder in ein extra svg-buch - so eins aus papier mit schwarzen buchstaben die draufgedruckt sind (ja sowas gibts auch noch)
    und bei http://www.selfsvg.info
  7. Autor dieses Themas

    robin

    Kostenloser Webspace von robin

    robin hat kostenlosen Webspace.

    so hab jetzt sogar bei selfhtml ein passendes svg gefunden
    http://de.selfhtml.org/html/multimedia/anzeige/object_data.htm
    ich hatte so einiges anders, aber jetzt geht es
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!