bjb: img src bei onclick ändern in safari nicht möglich, in FF schon.

Hallo zusammen,

Ziel meiner Webseite ist es, dass Besucher auf einen Text klicken können wodurch sich der Source-Pfad des img-Objektes ändert.

Folgend ist der aktuelle Code:

<img id="bild" src="000.jpg">               //BILDPLATZHALTER
            <br>
            <a onClick="bild.src='001.jpg'">test</a>    //ANZUKLICKENDER TEXT

Dies funktioniert im Firefox. Im Safari nicht.

Hat jemand eine Idee, wie dies angepasst werden kann, dass dies browserübergreifend funktioniert?

Vielen Dank.

  1. Hi,

    <img id="bild" src="000.jpg">               //BILDPLATZHALTER
                <br>
                <a onClick="bild.src='001.jpg'">test</a>    //ANZUKLICKENDER TEXT

    Dies funktioniert im Firefox. Im Safari nicht.

    Das würde mich doch sehr wundern, wenn das im Firefox klappt.
    Nur weil ein Element mit einer id versehen wurde, ist im Browser noch lange keine Javascript-Variable für dieses Element angelegt. So einen Schmarrn macht m.W. nur der IE.

    Hat jemand eine Idee, wie dies angepasst werden kann, dass dies browserübergreifend funktioniert?

    hol das Element per getElementById.

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    O o ostern ...
    Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.
    1. Grüße,

      Das würde mich doch sehr wundern, wenn das im Firefox klappt.
      Nur weil ein Element mit einer id versehen wurde, ist im Browser noch lange keine Javascript-Variable für dieses Element angelegt.

      ist document.body.id echt nicht konventionell?
      MFG
      bleicher

      --
      __________________________-

      FirefoxMyth
      1. Hallo,

        Nur weil ein Element mit einer id versehen wurde, ist im Browser noch lange keine Javascript-Variable für dieses Element angelegt.

        richtig, das tut -wie MudGuard richtig bemerkte- nur der IE.

        ist document.body.id echt nicht konventionell?

        Darum geht es hier nicht. Schau dir das Originalposting an:

        <img id="bild" src="000.jpg">

        Abgesehen davon, dass hier das notwendige alt-Attribut fehlt, führt diese Zeile im IE dazu, dass automatisch eine Variable bild im globalen Scope angelegt wird (also window.bild), die eine Referenz auf das img-Elementobjekt enthält.
        Diese ungebetene Verschmutzung des globalen Scopes machen andere Browser nicht.

        Ciao,
         Martin

        --
        Warum können wir heute so sicher sagen, dass Gott keine Frau sein kann?
        Weil dann nach "Es werde Licht" der nächste Satz "Wie sieht denn das hier aus?!" gewesen wäre.
        Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
        1. Grüße,

          Abgesehen davon, dass hier das notwendige alt-Attribut fehlt, führt diese Zeile im IE dazu, dass automatisch eine Variable bild im globalen Scope angelegt wird (also window.bild), die eine Referenz auf das img-Elementobjekt enthält.
          Diese ungebetene Verschmutzung des globalen Scopes machen andere Browser nicht.

          afaik alle die IE nachahmen als backfall - FF und Opera akzeptier(t)en sowas mal - aber die variablen werden da afaik wirklich "bei not" erzeugt
          MFG
          bleicher

          --
          __________________________-

          FirefoxMyth
        2. @@Der Martin:

          nuqneH

          Darum geht es hier nicht. Schau dir das Originalposting an:
          <img id="bild" src="000.jpg">
          Abgesehen davon, dass hier das notwendige alt-Attribut fehlt

          Da im OP nicht steht, welche HTML-Version verwendet wird, kann man auch nicht sagen, ob das @alt-Attribut notwendig ist, damit das Dokument valide ist.

          Ob das @alt-Attribut wegen Barrierefreiheit etc. in diesem Fall notwendig ist, lässt sich anhand des Codeschnipsels ebenfalls nicht sagen.

          Qapla'

          --
          Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
          (Mark Twain)
      2. Hi,

        Das würde mich doch sehr wundern, wenn das im Firefox klappt.
        Nur weil ein Element mit einer id versehen wurde, ist im Browser noch lange keine Javascript-Variable für dieses Element angelegt.
        ist document.body.id echt nicht konventionell?

        um auf die id des body-Elements zuzugreifen? Ja.

        Um ein Element mit einer ID irgendwo im Body zu finden: Nein, das macht nichtmal der IE ...

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        O o ostern ...
        Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.