User1989: Element in Funktionen

Hallo,
ich erstelle gerade eine Anwendung und habe glaube ich nicht genug Kenntnisse, um dieses Problem zu lösen.

Ich habe ein img-Element in HTML:

<img src="xx.png" id="bildid1" onclick="rufeanderesbild(this)">

So, mit "this" kann ich der JavaScript Funktion sagen, dass genau eben dieses Element angeklickt wurde.

JavaScript:

function rufeanderesbild(element){
document.getElementById(element).src="x2.png";
}

Jedoch funktioniert der Code nicht und mir wird in FireBug gesagt, dass diese Zeile(document.getElement...) null ist.

Was ist falsch?

  1. Hi,

    Jedoch funktioniert der Code nicht und mir wird in FireBug gesagt, dass diese Zeile(document.getElement...) null ist.

    Was ist falsch?

    die Variable element referenziert bereits das Element. Keine Notwendigkeit, es über irgend eine ID zu suchen. Genauer gesagt sehe ich überhaupt keinen Grund, eine ID zu _haben_.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Moin!

      Hi,

      Jedoch funktioniert der Code nicht und mir wird in FireBug gesagt, dass diese Zeile(document.getElement...) null ist.

      Was ist falsch?

      die Variable element referenziert bereits das Element. Keine Notwendigkeit, es über irgend eine ID zu suchen. Genauer gesagt sehe ich überhaupt keinen Grund, eine ID zu _haben_.

      Cheatah

      Cheatah meint:

        
      <img src="xx.png" id="bildid1" onclick="rufeanderesbild(this)">
      

      und dann:

      function rufeanderesbild(objImage){  
           objImage.src="x2.png";  
      }
      

      MFFG (Mit freundlich- friedfertigem Grinsen)

      fastix

      1. Lieber fastix®,

        Cheatah meint:

        dass die Verwendung von id="bildid1" nicht benötigt wird. Damit sähe der Code so aus:

        <img src="xx.png" alt="" onclick="rufeanderesbild(this)">

        Cheatah ist übrigens sehr auf korrekten Code bedacht. Bei Verwendung eines Doctypes vor HTML5 (also HTML4.01 oder XHTML1) ist das alt-Attribut zwingend erforderlich.

        und dann:

        function rufeanderesbild(objImage){

        objImage.src="x2.png";
        }

          
        das wiederum ist exakt das, was Cheatah meint.  
          
        Liebe Grüße,  
          
        Felix Riesterer.
        
        -- 
        ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)
        
  2. @@User1989:

    nuqneH

    <img src="xx.png" id="bildid1" onclick="rufeanderesbild(this)">

    So, mit "this" kann ich der JavaScript Funktion sagen, dass genau eben dieses Element angeklickt wurde.

    Beim Aufruf der Funktion wird als Parameter ein Elementobjekt (eben dieses Bildes) übergeben.

    function rufeanderesbild(element){
    document.getElementById(element).src="x2.png";
    }

    Die Implementierung der Funktion erwartet als Parameter einen String (der eine ID angibt).

    Und natürlich, was Cheatah sagte.

    Qapla'

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