Lutz T.: Frage wegen return true

Beitrag lesen

Hallo Sady,

Ok, hab ich gemacht und funktioniert. return ist doch dann
eine Funktion, oder ? Und das true in dem Fall eine Variable ?

Jein, es sieht aus wie ein Funktionsaufruf, aber es ist eher eine Anweisung, return heißt ja auf deutsch _gehe zurück_, und zwar wird bei return die aktuelle Funktion verlassen und das was in Klammern hinter return steht wird als Rückgabewert zurückgegeben. In unserem Fall steht da in Klammern _funktion_1('Ausgabe')_ , d.h. der Rückgabewert der Funktion _funktion_1('Ausgabe')_ (nämlich true) wird mittels
return(_funktion_1('Ausgabe')_) zurückgegeben.

Und beides zusammen wird dann als return true interpretiert,
weil dem return ja das true zugeordnet wird, hab ich das jetzt
richtig verstanden ?
Dann würde dort doch ausgeschrieben stehen
onmouseover="return true; funktion_1('Ausgabe 1');" oder ?

onmouseover="return true; funktion_1('Ausgabe 1');" würde nicht gehen, weil er nach return true schon weg wäre und funktion_1('Ausgabe 1'); danach nicht mehr ausführen könnte

Ist es egal ob ich return(true) oder return true schreibe ?

Im Prinzip geht beides (wahrscheinlich zuliebe der VB-Programmierer, die die Syntax ohne Klamer gewohnt sind). Ich persönlich bevorzuge aber die Version mit Klammern.

Damit er das href dann nicht mehr macht mach halt einfach ein return(true) in das mouseover rein damit er aus dem a-tag rausgeht, sonst würde das href ja den schönen Statustext einfach wieder überschreiben

Das hab ich jetzt nicht verstanden ... :-(

Mach mal noch die Funktion
function funktion_2(variable)
{ status=variable;
  setTimeout("funktion_1('"+variable+"')",1000);
}
in dein Script und jetzt den Aufruf mit
<p><a href="#" onmouseover="funktion_2('Ausgabe');">Link</a></p>
ohne return, da wirst Du sehen dass ohne _return true_ zunächst eine
Sekunde lang der Link vom href angezeigt wird (weil der den Text,der
in funktion_2 mit status=variable gesetzt wurde, wieder überschreibt)
erst wenn das setTimeout soweit ist (nach 1000 Millisekunden) wird
nochmal status=variable geschrieben und diesmal bleibts dann stehen.

Sorry, hab ich mal gelöscht.

schon klar ;-P

Zu Fasching darf man sich mal verkleiden, wie wär's das _S_ (temporär) gegen _Gl_ auszutauschen?

Mein Spitzname ist aber Sady *G* Kommt übrigens nicht von Sad,,
sondern von Cassandra-Sandy-Sady ... *G*

Cassandra hab ich schon mal irgendwo gehört, ist das aus der griechischen Mythologie oder ein Sternbild? Klingt jedenfalls geheimnisvoll.

Greetz Sady

Für weiteres Script-Studium darf ich auch etwas Eigenwerbung machen:
http://www.tu-chemnitz.de/~luta/streich/online.html
Viel Spaß weiterhin mit JavaScript
wünscht Lutz