3/4
INHALT

Der Weg nach Java (1/4)

JavaScript – wofür? (1/4)

Grundlagen (1/4)

Objects, Methods, Properties, Variabeln (2/4)

Events, Event Handlers (2/4)

Functions (2/4)

Wanzensuche (3/4)

Learning by doing (3/4)

Ausblick auf Teil 2 (3/4)

Event Handler (3/4)

Interessante Links zu JavaScript (4/4)

Beispiele in JavaScript:

JavaScript Workshop Teil 2

Tips - Übersicht

. Wanzensuche
Seien Sie nicht frustriert, wenn Ihr erstes Script einige Bugs beinhaltet. Jeder macht Fehler, ganz egal, ob er Anfänger ist oder Experte. Debugging ist ein normaler Bestandteil jedes Programmentwicklungsprozesses, allerdings ein unerlässlicher. Sie können Ihre Scripts nicht genug testen, und vergessen Sie nicht, dass die einzelnen Browser- und JavaScript-Varianten alles andere als kompatibel sind. Testen Sie Ihre Scripts mit allen verfügbaren Versionen und machen Sie notfalls entsprechende Kompatibilitätshinweise auf Ihren Seiten.

In den meisten Fällen handelt es sich beim Fehler um ein unkorrektes Statement. Sie werden vom Browser mit einem grossen Fenster auf den Bug aufmerksam gemacht, der dann meist problemlos korrigiert werden kann. In Ausnahmefällen wird der Fehler aber durch Unlogik verursacht. Alle Statements stimmen, aber der Output ist falsch. Solchen Fehlern auf die Schliche zu kommen, ist mit einiger Mühe verbunden.

Normalerweise zeigt das Fehler-Fenster, wo der Bug sitzt. Allerdings benützt der Browser recht mysteriöse Meldungen, die kaum wirklich sagen, was denn genau der Fehler ist. So kann eine ‘nicht definierte Funktion’ auch ganz einfach falsch geschrieben sein. Immerhin sagt die Meldung klar, wo der Fehler zu finden ist.

Fehlerquellen gibt es viele. Zwar behandelt JS alle Buchstaben gleich, «document.write» und «DOCUMENT.WRITE» sind also dasselbe. Namen von Funktionen oder Variablen dagegen werden nur erkannt, wenn sie identisch geschrieben sind: «submitit()» und «submitIt()» sind demnach zwei verschiedene Funktionen. Ausserdem ist darauf zu achten, dass beinahe alle Statements entweder mit Klammern ( ( [ { } ] ) ), Anführungszeichen ( ‘ " ) oder beidem geöffnet und auch geschlossen werden müssen. Oft geht das eine oder andere Zeichen vergessen.

Analysieren Sie auch die Fehlermeldung (wechselnde Teile haben wir hier mit ??? gekennzeichnet):

• ??? is not defined bedeutet, dass Sie entweder etwas falsch geschrieben haben oder die Funktion fehlt. Es ist auch möglich, dass die Funktion aufgerufen wird, bevor sie definiert ist, also an einem falschen Platz im Dokument sitzt.

•??? is not a function meint, dass Sie eine Funktion aufrufen, die gar nicht existiert. Sie ist entweder nicht definiert oder falsch geschrieben.

•??? is not a numeric literal zeigt auf, dass Sie einen numerischen Wert als String verwenden wollen z.B. document.write(1 + "st").

Zu diesem Zweck müssen Sie erst die Zahl in einen String konvertieren, was problemlos so gemacht werden kann: document.write("" + 1 + "st").

Das letzte Beispiel zeigt einen Fehler, der durch eine unlogische Vorgehensweise generiert wurde. Ein Computer ist niemals in der Lage, den Sinn eines Ausdrucks zu erkennen, wenn dieser nicht ganz genau definiert, richtig geschrieben und im passenden Format ist.

Learning by doing
Es ist eine gute Idee, zunächst mal im Web nach einer Lösung für ein aktuelles Problem zu suchen. Sie lernen am meisten über JS, wenn Sie existierende Source-Codes anschauen, analysieren und an Ihre Bedürfnisse anpassen. JavaScripts sind im Normalfall frei verfügbar, d. h. wenn Sie ein interessantes Script gefunden haben, dürfen Sie es auch verwenden. In den meisten Fällen verlangt der Autor allerdings, dass Sie im Quell-Code seinen Namen mit einem Copyright angeben, wenn Sie das Script unverändert übernehmen. Halten Sie sich bitte an diese Konvention.

Ausblick auf Teil 2
Im zweiten Teil dieses Workshops werden wir fortgeschrittenere, komplexere Möglichkeiten von JavaScript, wie beispielsweise Arrays, Schleifen und Konditionalformen einführen. Als kleinen Vorgeschmack werfen Sie einen Blick auf das Beispiel «Einfacher Text-Ticker», das von einigen dieser Techniken Gebrauch macht. Versuchen Sie schon mal, es zu analysieren und zu verstehen!

Ausserdem werden wir auf die neuen JavaScript StyleSheets und Layers eingehen, die Netscape mit ihrem Navigator 4.0 zur Verfügung stellt, die aber ohne JavaScript ihre Stärke kaum voll entfalten können. (mva)

Event Handler

onFocus löst Aktion aus, wenn ein Objekt fokussiert wird
onBlur löst Aktion aus, wenn der Fokus vom Objekt genommen wird
onSelect löst Aktion aus, wenn Text ausgewählt wird
onChange löst Aktion aus, wenn der Wert eines Objekts geändert wird
onSubmit löst Aktionaus, wenn ein Formular abgeschickt wird
onClick löst Aktion aus, wenn ein Button oder Link angeklickt wird
onMouseOver löst Aktion aus, wenn die Maus über einen Link geführt wird
onMouseOut löst Aktion aus, wenn die Maus vom Link weggeführt wird
onLoad löst Aktion aus, sobald dqs Dokument oder ein Bild geladen ist
onUnload löst Aktion aus, wenn die Seite verlassen wird
onAbort löst Aktion aus, wenn der Ladeprozess gestoppt wird
onError löst Aktion aus, wenn das Script einen Fehler
feststellt

Vorherige Seite | Tips | Nächste Seite

 

© 1997 Marc von Ah, Windows Guide Schweiz