• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

javascript..parameter??

FLU

Braeburn
Registriert
29.11.05
Beiträge
44
Hallo

Ich bin ganz neu dabei was JS anbelangt. Probiere gerade eine kleine Funktion für ein Menu zu basteln. Nichts wildes. Funktioniert jedoch nicht ganz wie ich mir es wünsche...

Hier der Quelltext:

HTML:

<img src="./layout/buttons/home.gif" onmouseover="chng('a')" onmouseout="chng2('a')">
<img src="./layout/buttons/home.gif" onmouseover="chng('b')" onmouseout="chng2('b')">

JS:

function chng(wert){

if (wert = "a"){

document.images("t1").src="./layout/buttons/pfeil.gif";



}



if (wert = "b"){

document.images("t2").src="./layout/buttons/pfeil.gif";



}


}

function chng2(){

if (wert = "a"){

document.images("t1").src="./layout/buttons/none.gif";

}

if (wert = "b"){

document.images("t2").src="./layout/buttons/none.gif";

}
}

Das soll nun ein pfeil einblenden...je nach button ... es blendet aber immer an beiden orten den pfeil ein. Wollte es eigentlich mit a / b beschränken und an die Funktion übergeben...scheint jedoch nicht zu funktionieren!
Bin für jede Hilfe dankbar!

Grüsse
 

seb2

Gast
Du hast wirklich 'wert = "a"' geschrieben?
Das ist eine Zuweisung. Vergleich mit "==" statt "=".
 

FLU

Braeburn
Registriert
29.11.05
Beiträge
44
alles klar! manchmal sollte man mehr schlafen! Thnk das Du mich darauf aufmerksam gemacht hast! Und sorry, dass ich so was in einem Forum schreibe! tja...
 

seb2

Gast
Jeder hat sowas schonmal gemacht, keine Sorge.

Was ich mir angewöhnt habe -- und zuerst gewöhnungsbedürftig aussieht -- ist Folgendes: statt

if (wert == "a")

schreibe ich

if ("a" == wert)

Wenn Du da aus Versehen mal nur ein "=" schreibst gibt das in C schon lange vor dem Kompilieren einen Fehler und auch JavaScript sollte Dir in der Konsole einen Parser-Fehler anzeigen, denn '"a" = wert' ist unzulässig.
Wie gesagt, mit der Konstanten links ist das nicht ganz so natürlichsprachlich aber wenn man sich das einmal zur Gewohnheit gemacht hat und dann mal ein "=" vergißt ist die Fehlersuche wesentlich kürzer.