3.2 JavaScript-Links  
JavaScript-Befehle werden oft aufgrund von Benutzereingaben ausgeführt. Eine Möglichkeit besteht darin, eine Aktion durch einen Mausklick zu starten. Bevor ein paar Beispiele vorgestellt werden, muss noch ein neuer JavaScript-Befehl eingeführt werden. Mit window.alert("Invincibility is in oneself, vulnerability is in the opponent") wird ein modales Fenster ausgegeben, das den Text »Invincibility is in oneself, vulnerability is in the opponent« anzeigt. Je nach verwendetem Browser sieht das etwas anders aus; in Abbildung 3.7 sehen Sie die Darstellung im Firefox und in Abbildung 3.8 im Safari-Browser. Sie sehen daran, dass Sie auf das grafische Layout keinen Einfluss nehmen können, denn das wird vom jeweiligen Browser übernommen.
 Hier klicken, um das Bild zu Vergrößern
Abbildung 3.7 Ein Warnfenster mit dem Firefox
 Hier klicken, um das Bild zu Vergrößern
Abbildung 3.8 Dieselbe Meldung, diesmal im Mac-Browser Safari
HTML-Links können auf URLs mit den verschiedensten Protokollen verweisen, so zum Beispiel http:, ftp:, news: oder mailto:. Nun kommt ein weiteres Protokoll hinzu, das jedoch lediglich im Zusammenhang mit JavaScript eine Bedeutung hat: javascript:. Folgender Link gibt »Invincibility is in oneself, vulnerability is in the opponent« in einem modalen Fenster aus, wenn man darauf klickt:
<a href="javascript:window.alert('Invincibility is in oneself, vulnerability is in the opponent');">
Beachten Sie die Anführungszeichen. In JavaScript ist es prinzipiell egal, ob Sie einfache oder doppelte Anführungszeichen verwenden – Hauptsache, Sie hören so auf, wie Sie angefangen haben.
Folgendes ist also völlig korrekt:
document.write("The weather means the seasons");
document.write('<br />Invincibility is in oneself,
vulnerability is in the opponent');
Falsch ist dagegen:
document.write("The weather means the seasons ');
document.write('<br />Invincibility is in oneself,
vulnerability is in the opponent");
Obwohl man mit dem Pseudo-Protokoll javascript: bequem JavaScript-Befehle aufrufen kann, gibt es doch einen kleinen Nachteil: Browser, die kein JavaScript unterstützen, geben eine Fehlermeldung aus. Im folgenden Abschnitt wird diesem Missstand abgeholfen.
|