Ankündigung

Einklappen
Keine Ankündigung bisher.

Funktion über Link aufrufen

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Funktion über Link aufrufen

    Moin,

    ich habe bei meinen Recherchen dieses Forum entdeckt und habe dann auch gleich mal eine Frage, über die ich mir seit zwei Tagen den Kopf zerbreche. Ich muss dazu sagen, dass ich leider ziemlicher Anfänger mit JavaScript bin und wahrscheinlich schon eine Lösung hätte, würde ich die richtigen Stichwörter kennen. Falls dem so ist, wäre ich trotzdem für einen Lösungsansatz äußerst dankbar.

    Ich habe eine Galerie mit ImageFlow. Unter dieser Galerie möchte ich jetzt eine Leiste mit Thumbnails der Bilder darin einfügen, damit der User bei Bedarf direkt zu einem bestimmten Bild springen kann, natürlich mit dieser schönen Coverflow-Animation.

    Die Thumbnails habe ich jetzt von Hand eingefügt und versuche eigentlich nur noch, mit einem Link die Funktion aufzurufen, die soweit ich den Code verstehe, für die Animation zuständig ist und die Bildnummer zu übergeben, in diesem Fall 3. Mein Code sieht im Moment so aus:
    Code:
    <li><a href="javascript: function glideTo(3);"><img src="img/img1.png" longdesc="img/img1.png" width="400" height="300" alt="Image 1" id="0" /></a></li>
    Als Fehlermeldung bekomme ich damit "Uncaught SyntaxError: Unexpected number". Kann mir jemand von euch weiterhelfen?


  • #2
    function hat da nichts verloren

    Kommentar


    • #3
      Danke, ich habe es auch schon ohne function versucht, dann bekomme ich diesen Fehler:
      Uncaught ReferenceError: glideTo is not defined

      Ich habe auch schon das versucht:
      Code:
      <li><a href="javascript: myImageFlow.glideTo(3);"><img src="img/img1.png" longdesc="img/img1.png" width="400" height="300" alt="Image 1" id="0" /></a></li>
      Aber das führt zu: "Uncaught TypeError: Object #<an HTMLDivElement> has no method 'glideTo'", ich denke also mal, das ist der falsche Weg, um die Funktion aufzurufen.

      Kommentar


      • #4
        Zitat von knut Beitrag anzeigen
        Danke, ich habe es auch schon ohne function versucht, dann bekomme ich diesen Fehler:
        Uncaught ReferenceError: glideTo is not defined
        Natürlich, die Methode gehört ja zu einer Objektinstanz, also kannst du die nicht einfach so aufrufen.

        Ich habe auch schon das versucht:
        Code:
        <li><a href="javascript: myImageFlow.glideTo(3);"><img src="img/img1.png" longdesc="img/img1.png" width="400" height="300" alt="Image 1" id="0" /></a></li>
        Aber das führt zu: "Uncaught TypeError: Object #<an HTMLDivElement> has no method 'glideTo'", ich denke also mal, das ist der falsche Weg, um die Funktion aufzurufen.
        Dann ist myImageFlow wohl das falsche Objekt.
        Laut Fehlermeldung ist es ja ein HTML-Element-Objekt, das ist natürlich nicht das richtige. Du musst die Methode schon auf der Instanz des JavaScript-Objektes aufrufen, dass du erstellt hast. (Im Beispiel in der Installationsanweisung wäre das das Objekt mit dem Namen instanceOne; allerdings müsste man das erst noch global verfügbar machen, was es im Beispiel nicht ist.)


        (Wenn jetzt jede Menge „hä?“ und „Bahnhof“ kommen - dann bitte erst mal mit JavaScript-Grundlagen beschäftigen.)

        Kommentar


        • #5
          Vielen Dank, genau das meinte ich mit den richtigen Stichworten, jetzt funktioniert es.

          Und falls jemand mal vor dem gleichen Problem steht, hier mein Code:
          Code:
          <li><a href="javascript: instanceOne.glideTo(0);"><img src="img/img1.png" longdesc="img/img1.png" width="400" height="300" alt="Image 1" id="0" /></a></li>
          Statt 0 dann natürlich das gewünscht Bild einsetzen.

          Kommentar

          Lädt...
          X