Hi Markus,
- Warum verwendet man hier (bzw. allgemein) den Backslash? Geht es auch ohne? Was bewirkt er hier?
Der Backslash wird verwendet, um ein Zeichen zu maskieren. Beispiel:
str += " onMouseOut="swapClass('" + text + "', '"
Der Variablen str wird hinzugefügt (+=) ein String, und der steht innerhalb von "". Jetzt kommt aber innerhalb des Strings selber ein " vor (vor swapClass z.B.). Einfach so hingeschrieben würde der Interpreter dieses " als Zeichen für ein Ende des Strings interpretieren, und es würde völliges Chaos entstehen. Der \ aber maskiert genau deshalb das ", d.h. für den Interpreter: "Das ist nur ein Zeichen und hat nichts für Dich zu bedeuten!"
- Wann muß ich " und wann ' verwenden?
Das ist im wesentlichen Dir überlassen. Eine abwechselnde Verwendung spart Dir ab und an das Maskieren per , was sich halt doch leichter schreibt. Du musst nur aufpassen, dass Du nicht durcheinander kommst, denn etwas, das mit ' anfängt, muss mit ' aufhören (gilt natürlich auch für ") - insbesondere Anfänger fliegen dabei regelmäßig aus der Kurve (ging mir auch so). Und noch was: wenn Du innerhalb Deines Scripts HTML-Elemente hast, müssen dort natürlich " verwendet werden, weil in HTML ' keinen Sinn macht. Beispiel:
document.write('<p class="gelaber">Laber Laber</p>'; funzt,
document.write("<p class='gelaber'>Laber Laber</p>"; dagegen geht in die Hose.
Was aber dann wieder ginge, wäre
document.write("<p class="gelaber">Laber Laber</p>";
weil korrekt maskiert.
Alle Klarheiten beseitigt?
Grüße,
Utz