|
Auf einen Blick |
3 |
|
|
Inhalt |
7 |
|
|
Teil I JavaScript lernen |
27 |
|
|
1 Einleitung |
29 |
|
|
1.1 Die Geschichte von JavaScript |
30 |
|
|
1.2 Voraussetzungen |
32 |
|
|
1.3 Danksagungen zu »JavaScript« (1. Auflage) |
34 |
|
|
1.4 Danksagungen zu »JavaScript-Rezepte« ( 1. Auflage) |
35 |
|
|
1.5 Vorwort zur 5. Auflage |
36 |
|
|
1.6 Vorwort zur 6. Auflage |
37 |
|
|
1.7 Die Icons in diesem Buch |
39 |
|
|
2 Vorbereitung |
41 |
|
|
2.1 Webbrowser |
41 |
|
|
2.1.1 Netscape Navigator (und Konsorten) |
41 |
|
|
2.1.2 Microsoft Internet Explorer |
46 |
|
|
2.1.3 Opera |
49 |
|
|
2.1.4 Konqueror |
50 |
|
|
2.1.5 Safari |
51 |
|
|
2.1.6 Marktanteile |
52 |
|
|
2.1.7 Testsystem |
54 |
|
|
2.2 Verwendung von |
55 |
|
|
2.2.1 Das language-Attribut |
57 |
|
|
2.2.2 Browser ohne JavaScript |
61 |
|
|
2.2.3 Externe Dateien |
65 |
|
|
2.3 JavaScript-Links |
67 |
|
|
2.4 Event-Handler |
69 |
|
|
2.5 JavaScript-Entities |
69 |
|
|
3 Programmierung I |
71 |
|
|
3.1 Variablen |
71 |
|
|
3.1.1 Namensgebung |
71 |
|
|
3.1.2 Numerische Variablen |
72 |
|
|
3.1.3 Zeichenketten |
72 |
|
|
3.1.4 Boolesche Variablen |
73 |
|
|
3.1.5 Variablendeklaration |
73 |
|
|
3.2 Operatoren |
74 |
|
|
3.2.1 Arithmetische Operatoren |
74 |
|
|
3.2.2 Boolesche Operatoren |
76 |
|
|
3.2.3 String-Operatoren |
78 |
|
|
3.2.4 Umwandlung zwischen den Variablentypen |
79 |
|
|
3.3 Kontrollstrukturen: Schleifen |
80 |
|
|
3.3.1 For-Schleifen |
80 |
|
|
3.3.2 Do-While-Schleife |
82 |
|
|
3.3.3 While-Schleife |
83 |
|
|
3.3.4 For-In-Schleife |
83 |
|
|
3.3.5 Schleifensteuerung |
84 |
|
|
3.4 Fragen & Aufgaben |
84 |
|
|
4 Programmierung II |
87 |
|
|
4.1 Fallunterscheidung |
87 |
|
|
4.1.1 If-Anweisung |
87 |
|
|
4.1.2 Switch-Anweisung |
90 |
|
|
4.2 Datenspeicherung |
92 |
|
|
4.2.1 Die eval-Methode |
92 |
|
|
4.2.2 Arrays |
94 |
|
|
4.3 Funktionen |
96 |
|
|
4.4 Objekte |
100 |
|
|
4.5 Fragen & Aufgaben |
101 |
|
|
5 Erste Schritte |
103 |
|
|
5.1 JavaScript-Objekte |
103 |
|
|
5.1.1 Das Objekt Date |
103 |
|
|
5.1.2 Das Objekt Math |
109 |
|
|
5.2 Browser-Erkennung |
112 |
|
|
5.3 Event-Handler |
120 |
|
|
5.4 Fragen & Aufgaben |
121 |
|
|
6 Fenster I |
123 |
|
|
6.1 Modale Fenster |
123 |
|
|
6.1.1 Warnung – nur im Notfall |
124 |
|
|
6.1.2 Bestätigungen |
126 |
|
|
6.1.3 Benutzereingaben |
128 |
|
|
6.2 Navigationsleiste mit JavaScript |
129 |
|
|
6.2.1 Das History-Objekt |
129 |
|
|
6.2.2 Vorwärts und rückwärts, Teil 2 |
130 |
|
|
6.2.3 Drucken mit JavaScript |
131 |
|
|
6.3 Die Statuszeile |
132 |
|
|
6.3.1 Erläuternde Links |
133 |
|
|
6.3.2 Laufschrift |
133 |
|
|
6.4 Das location-Objekt |
138 |
|
|
6.5 Fragen & Aufgaben |
139 |
|
|
7 Formulare I |
141 |
|
|
7.1 Überprüfung auf Vollständigkeit |
141 |
|
|
7.1.1 Allgemeiner Aufbau |
143 |
|
|
7.1.2 Texteingabefelder |
144 |
|
|
7.1.3 Radiobuttons |
145 |
|
|
7.1.4 Checkboxen |
146 |
|
|
7.1.5 Auswahllisten |
146 |
|
|
7.1.6 Fehlermeldung ausgeben |
147 |
|
|
7.1.7 Konstruktive Vorschläge |
148 |
|
|
7.2 Automatische Überprüfung |
150 |
|
|
7.2.1 Texteingabefelder |
151 |
|
|
7.2.2 Radiobuttons |
152 |
|
|
7.2.3 Checkboxen |
153 |
|
|
7.2.4 Auswahllisten |
153 |
|
|
7.2.5 Zusammenfassung |
153 |
|
|
7.3 Anwendungsmöglichkeiten für Formulare |
155 |
|
|
7.3.1 Währungsrechner |
155 |
|
|
7.3.2 Währungsrechner, Teil 2 |
157 |
|
|
7.3.3 Formularfelder für die Textausgabe nutzen |
158 |
|
|
7.3.4 Navigation mit Auswahllisten |
159 |
|
|
7.4 Fragen & Aufgaben |
161 |
|
|
8 Fenster II: Frames |
163 |
|
|
8.1 Mit Frames arbeiten |
163 |
|
|
8.1.1 Frames mit HTML |
164 |
|
|
8.1.2 Frames mit JavaScript füllen |
165 |
|
|
8.2 Auf Daten von Frames zugreifen |
167 |
|
|
8.2.1 Auf übergeordnete Frames zugreifen |
169 |
|
|
8.2.2 Auf Daten von Unterframes zugreifen |
172 |
|
|
8.2.3 Mehrere Frames gleichzeitig ändern |
174 |
|
|
8.2.4 Gefährliche Fallen |
175 |
|
|
8.3 Ein Warenkorb in JavaScript |
176 |
|
|
8.3.1 Daten in den Warenkorb eintragen |
177 |
|
|
8.3.2 Daten aus dem Warenkorb auslesen |
180 |
|
|
8.3.3 Den Warenkorb verändern |
183 |
|
|
8.4 Diashow |
186 |
|
|
8.4.1 Vorbereitungen |
187 |
|
|
8.4.2 Diashow starten |
189 |
|
|
8.4.3 Diashow anhalten |
189 |
|
|
8.4.4 Vorwärts und rückwärts springen |
190 |
|
|
8.4.5 Diashow verlassen |
190 |
|
|
8.5 Fragen & Aufgaben |
190 |
|
|
9 Images |
193 |
|
|
9.1 Bildlein- Wechsle-Dich |
193 |
|
|
9.1.1 Zugriff auf Grafiken |
194 |
|
|
9.1.2 Prüfungen auf Kompatibilität |
195 |
|
|
9.2 Animierte JPEGs |
198 |
|
|
9.2.1 Eine Animation mit JavaScript |
199 |
|
|
9.2.2 Bilder in den Cache laden |
200 |
|
|
9.3 Animierte Navigation |
203 |
|
|
9.3.1 Vorüberlegungen |
204 |
|
|
9.3.2 Auf- und Zuklappen |
205 |
|
|
9.3.3 Die einzelnen Menüpunkte |
206 |
|
|
9.3.4 Verlinkung der Menüpunkte |
208 |
|
|
9.3.5 Einbau in die HTML-Datei |
208 |
|
|
9.4 Erweiterung der Navigation |
209 |
|
|
9.4.1 Vorbereitungen |
209 |
|
|
9.4.2 Leichte Änderungen |
210 |
|
|
9.4.3 Doppeltes Mouseover |
211 |
|
|
9.4.4 Das komplette Beispiel im Überblick |
212 |
|
|
9.5 Tipps aus der Praxis |
212 |
|
|
9.5.1 Vorladen – aber richtig |
212 |
|
|
9.5.2 Ladestand einer Grafik |
212 |
|
|
9.6 Fragen & Aufgaben |
215 |
|
|
10 Fenster III |
217 |
|
|
10.1 Ein neues Fenster öffnen |
217 |
|
|
10.1.1 Ein Fenster öffnen und füllen |
217 |
|
|
10.1.2 Ein Fenster öffnen und verlinken |
219 |
|
|
10.1.3 Ein Fenster öffnen und anpassen |
220 |
|
|
10.1.4 Modale Fenster |
225 |
|
|
10.2 Fernsteuerung |
226 |
|
|
10.2.1 Links mit JavaScript |
226 |
|
|
10.2.2 Links ohne JavaScript |
228 |
|
|
10.3 Fenster schließen |
229 |
|
|
10.3.1 Andere Fenster schließen |
230 |
|
|
10.3.2 Lösung für ältere Browser |
231 |
|
|
10.4 Fenster in den Vordergrund holen |
232 |
|
|
10.5 Fenster bewegen mit JavaScript |
233 |
|
|
10.5.1 Fenster verschieben |
234 |
|
|
10.5.2 Fensterinhalt scrollen |
235 |
|
|
10.6 Fragen & Aufgaben |
236 |
|
|
11 Cookies |
237 |
|
|
11.1 Was ist ein Cookie? |
237 |
|
|
11.2 Wie sieht ein Cookie aus? |
238 |
|
|
11.3 Cookies mit JavaScript |
240 |
|
|
11.3.1 Cookies setzen |
241 |
|
|
11.3.2 Cookies löschen |
241 |
|
|
11.3.3 Cookies lesen |
242 |
|
|
11.3.4 Cookie-Unterstützung überprüfen |
242 |
|
|
11.3.5 Warenkorb mit Cookies |
245 |
|
|
11.4 Informationen behalten ohne Cookies |
248 |
|
|
11.5 Fragen & Aufgaben |
253 |
|
|
12 Formulare II |
255 |
|
|
12.1 Daten behalten |
255 |
|
|
12.1.1 Das Eingabeformular |
255 |
|
|
12.1.2 Die Ausgabeseite |
257 |
|
|
12.2 Dynamische Auswahllisten |
260 |
|
|
12.2.1 Ein erster Ansatz |
260 |
|
|
12.2.2 Ein fortgeschrittener Ansatz |
263 |
|
|
12.3 Überprüfungsfunktionen |
264 |
|
|
12.3.1 Ganze Zahlenwerte |
264 |
|
|
12.3.2 Dezimalzahlen |
266 |
|
|
12.3.3 Telefonnummern |
267 |
|
|
12.3.4 In Zahlenwerte umwandeln |
268 |
|
|
12.4 Reguläre Ausdrücke |
269 |
|
|
12.4.1 Kurzeinführung |
269 |
|
|
12.4.2 Ein Objekt erzeugen |
271 |
|
|
12.4.3 Mit dem Objekt arbeiten |
272 |
|
|
12.5 Fragen & Aufgaben |
278 |
|
|
13 Objekte und Arrays |
279 |
|
|
13.1 Array-Erweiterungen |
279 |
|
|
13.1.1 Einfügen, nicht anfügen |
280 |
|
|
13.1.2 Anfügen und löschen |
280 |
|
|
13.1.3 Karten mischen |
282 |
|
|
13.1.4 Sortieren |
282 |
|
|
13.2 Eigene Objekte |
286 |
|
|
13.2.1 Allgemeines |
286 |
|
|
13.2.2 Methoden definieren |
287 |
|
|
13.2.3 Eigene Sortiermethode |
288 |
|
|
13.2.4 Eigene Sortiermethode, Teil 2 |
290 |
|
|
13.2.5 Zusammenfassung |
291 |
|
|
13.3 Fragen & Aufgaben |
295 |
|
|
14 Musik |
297 |
|
|
14.1 Plugins erkennen |
297 |
|
|
14.1.1 Zugriff auf Plugins |
298 |
|
|
14.1.2 Zugriff auf MIME- Typen |
299 |
|
|
14.1.3 Refresh |
299 |
|
|
14.2 Zugriff auf Musikdateien |
300 |
|
|
14.2.1 Browsertest |
300 |
|
|
14.2.2 Soundsteuerung |
301 |
|
|
14.2.3 Jukebox |
302 |
|
|
14.3 Fragen & Aufgaben |
305 |
|
|
15 Events |
307 |
|
|
15.1 Events mit dem Netscape Navigator |
307 |
|
|
15.1.1 Neue Ereignisse |
308 |
|
|
15.1.2 Ereignisse als Objekteigenschaften |
309 |
|
|
15.1.3 Ereignisse abfangen |
310 |
|
|
15.1.4 Ereignisbehandlung |
311 |
|
|
15.1.5 Ereignisse umleiten |
314 |
|
|
15.1.6 Ereignisse durchleiten |
315 |
|
|
15.1.7 Tastatureingaben |
316 |
|
|
15.2 Events mit dem Internet Explorer |
318 |
|
|
15.2.1 Neue Ereignisse |
318 |
|
|
15.2.2 Ereignisse als Objekteigenschaften |
318 |
|
|
15.2.3 Spezielle Skripten |
319 |
|
|
15.2.4 Ereignisse abfangen |
319 |
|
|
15.2.5 Bubbling |
320 |
|
|
15.2.6 Das Event-Objekt |
322 |
|
|
15.3 Events mit beiden Browsern |
324 |
|
|
15.3.1 Browserunabhängigkeit |
324 |
|
|
15.3.2 Benutzereingaben |
325 |
|
|
15.4 Fragen & Aufgaben |
329 |
|
|
16 DHTML I: Netscape 4 |
331 |
|
|
16.1 Grundlagen |
331 |
|
|
16.1.1 Begriffsbestimmung |
331 |
|
|
16.1.2 Cascading Style Sheets |
332 |
|
|
16.1.3 Positionierung von Elementen |
333 |
|
|
16.1.4 JavaScript Style Sheets |
333 |
|
|
16.1.5 Layer |
334 |
|
|
16.2 Beispiele |
336 |
|
|
16.2.1 Animiertes Logo |
336 |
|
|
16.2.2 Drag&Drop |
339 |
|
|
16.2.3 Sichtbar und unsichtbar |
343 |
|
|
16.2.4 Neuer Mauszeiger |
346 |
|
|
16.2.5 Permanentes Werbebanner |
348 |
|
|
16.3 Fragen & Aufgaben |
351 |
|
|
17 DHTML II: Internet Explorer |
353 |
|
|
17.1 Grundlagen |
353 |
|
|
17.1.1 HTML- Tags |
353 |
|
|
17.1.2 Objektzugriff |
354 |
|
|
17.2 Beispiele |
354 |
|
|
17.2.1 Animiertes Logo |
355 |
|
|
17.2.2 Drag&Drop |
356 |
|
|
17.2.3 Sichtbar und unsichtbar |
359 |
|
|
17.2.4 Neuer Mauszeiger |
361 |
|
|
17.2.5 Permanentes Werbebanner |
362 |
|
|
17.3 Fragen & Aufgaben |
364 |
|
|
18 DHTML III: Mozilla & Co. |
365 |
|
|
18.1 Grundlagen |
366 |
|
|
18.1.1 HTML- Tags |
366 |
|
|
18.1.2 Objektzugriff |
366 |
|
|
18.2 Beispiele |
367 |
|
|
18.2.1 Animiertes Logo |
367 |
|
|
18.2.2 Drag&Drop |
369 |
|
|
18.2.3 Sichtbar und unsichtbar |
371 |
|
|
18.2.4 Neuer Mauszeiger |
373 |
|
|
18.2.5 Permanentes Werbebanner |
374 |
|
|
18.3 Fragen & Aufgaben |
376 |
|
|
19 DHTML IV: Für alle Browser |
377 |
|
|
19.1 Animiertes Logo |
377 |
|
|
19.2 Drag&Drop |
381 |
|
|
19.3 Sichtbar und unsichtbar |
386 |
|
|
19.4 Neuer Mauszeiger |
390 |
|
|
19.5 Permanentes Werbebanner |
391 |
|
|
19.6 Fragen & Aufgaben |
393 |
|
|
20 Java |
395 |
|
|
20.1 Allgemeines |
395 |
|
|
20.1.1 Wie funktioniert Java? |
395 |
|
|
20.1.2 Kurzeinführung in Java |
397 |
|
|
20.2 Java und das WWW |
398 |
|
|
20.2.1 Ein Beispiel-Applet |
398 |
|
|
20.2.2 HTML-Integration |
399 |
|
|
20.3 Java ohne Applet |
402 |
|
|
20.3.1 Exemplarische Java-Objekte |
402 |
|
|
20.3.2 Blackjack |
403 |
|
|
20.3.3 Karten initialisieren |
404 |
|
|
20.3.4 Karten mischen |
404 |
|
|
20.4 Fragen & Aufgaben |
407 |
|
|
21 Signierte Skripten |
409 |
|
|
21.1 Zusätzliche Rechte |
409 |
|
|
21.1.1 Allgemeines |
410 |
|
|
21.1.2 Surfüberwachung |
411 |
|
|
21.1.3 Besondere Fenster |
413 |
|
|
21.2 Signieren |
415 |
|
|
21.2.1 Zigbert |
415 |
|
|
21.2.2 HTML-Code anpassen |
416 |
|
|
22 DOM |
417 |
|
|
22.1 Der DOM-Baum |
417 |
|
|
22.2 Navigation im Baum |
418 |
|
|
22.3 Den Baum modifizieren |
419 |
|
|
22.4 Fragen & Aufgaben |
425 |
|
|
23 Fehler |
427 |
|
|
23.1 Fehler abfangen |
427 |
|
|
23.1.1 Keine Fehlermeldung |
428 |
|
|
23.1.2 Besondere Fehlermeldung |
428 |
|
|
23.1.3 Ausblick: Fehlermeldungen verschicken |
429 |
|
|
23.2 JavaScript Debugger |
434 |
|
|
23.2.1 Wo ist der Fehler? |
435 |
|
|
23.2.2 Breakpoints |
437 |
|
|
23.2.3 Watches |
437 |
|
|
23.2.4 Einzelne Werte anzeigen |
438 |
|
|
23.2.5 Schrittweise Programmausführung |
439 |
|
|
23.3 Fragen |
440 |
|
|
24 Web Services |
441 |
|
|
24.1 Was sind Web Services? |
442 |
|
|
24.1.1 Verteiltes Arbeiten |
442 |
|
|
24.1.2 WSDL |
443 |
|
|
24.1.3 Web Service aufrufen |
444 |
|
|
24.2 Web Services mit JScript .NET |
446 |
|
|
24.2.1 Installation |
447 |
|
|
24.2.2 Programmierung |
448 |
|
|
24.3 Mit dem Internet Explorer auf Web Services zugreifen |
452 |
|
|
24.4 Mit Mozilla auf Web Services zugreifen |
456 |
|
|
24.5 Web Services ohne Web Service |
462 |
|
|
24.6 Fazit |
464 |
|
|
25 JavaScript goes .NET |
465 |
|
|
25.1 Erste Schritte |
465 |
|
|
25.2 HTML Controls |
470 |
|
|
25.3 Web Controls |
472 |
|
|
25.4 Validation Controls |
475 |
|
|
25.5 Fazit |
479 |
|
|
Teil II JavaScript anwenden |
481 |
|
|
26 JavaScript einbauen |
483 |
|
|
26.1 JavaScript: ja oder nein? |
483 |
|
|
26.2 JavaScript- Versionen |
487 |
|
|
26.3 Browserversionen |
491 |
|
|
26.4 Methoden und Objekte prüfen |
495 |
|
|
27 Zufall |
499 |
|
|
27.1 Zufallszahlen erstellen |
499 |
|
|
27.1.1 JavaScript-Zufallszahlen |
499 |
|
|
27.1.2 HP- Verfahren |
500 |
|
|
27.1.3 Datumswert |
502 |
|
|
27.2 Hilfsfunktionen |
503 |
|
|
27.2.1 Zufallszahl aus einem Bereich |
503 |
|
|
27.2.2 Mehrere Zufallszahlen |
504 |
|
|
27.3 Anwendungsbeispiele |
506 |
|
|
27.3.1 Lottozahlen |
506 |
|
|
27.3.2 Zufallsbanner |
508 |
|
|
28 Cookies |
513 |
|
|
28.1 Allgemeines |
514 |
|
|
28.1.1 Cookie-Elemente |
515 |
|
|
28.1.2 Cookies mit HTML setzen |
519 |
|
|
28.2 Cookies schreiben |
520 |
|
|
28.3 Cookies lesen |
522 |
|
|
28.4 Cookies löschen |
524 |
|
|
28.5 Anwendungen |
525 |
|
|
28.5.1 Cookie-Unterstützung prüfen |
525 |
|
|
28.5.2 Alle Cookies auslesen |
527 |
|
|
28.5.3 Ein Cookie statt vieler Cookies |
530 |
|
|
29 Code schützen |
535 |
|
|
29.1 Quellcode einsehen |
535 |
|
|
29.1.1 Menübefehle |
536 |
|
|
29.1.2 Tastenkürzel |
536 |
|
|
29.1.3 Kontextmenü |
537 |
|
|
29.1.4 Dateisystem |
538 |
|
|
29.2 Code im Frame verstecken |
539 |
|
|
29.3 Mausklick verhindern |
541 |
|
|
29.4 Code codieren |
544 |
|
|
29.4.1 Optisch verschleiern |
544 |
|
|
29.4.2 Inhaltlich verschleiern |
545 |
|
|
29.5 Dateien auslagern |
549 |
|
|
29.6 Caching verhindern |
550 |
|
|
29.7 Code serverseitig generieren |
551 |
|
|
30 Top Secret: Passwortschutz |
555 |
|
|
30.1 URL aus Passwort |
556 |
|
|
30.1.1 Passwort == URL |
556 |
|
|
30.1.2 Passwort |
557 |
|
|
URL |
557 |
|
|
30.1.3 f : Passwort |
558 |
|
|
URL |
558 |
|
|
30.2 Seiten mit Cookies schützen |
559 |
|
|
30.2.1 Passwort im Quelltext |
560 |
|
|
30.2.2 Mit Java |
561 |
|
|
30.3 Ein Blick über den Tellerrand |
563 |
|
|
30.3.1 PHP |
563 |
|
|
30.3.2 ASP |
565 |
|
|
30.3.3 .htaccess |
566 |
|
|
31 Grafiken |
569 |
|
|
31.1 Ein Image-Objekt einbinden |
570 |
|
|
31.2 Vorladen |
575 |
|
|
31.3 Fortschrittsanzeige |
577 |
|
|
31.4 Rollover |
583 |
|
|
32 Frames |
589 |
|
|
32.1 Frames füllen |
589 |
|
|
32.2 Framezugriff |
591 |
|
|
32.3 (Mehrere) Frames ändern |
592 |
|
|
32.4 Frames forever |
595 |
|
|
32.5 Alternativen |
597 |
|
|
33 DHTML V – für die Praxis |
601 |
|
|
33.1 Browserabhängiges DHTML |
603 |
|
|
33.1.1 Der Ansatz von Netscape |
603 |
|
|
33.1.2 Der Ansatz von Microsoft |
605 |
|
|
33.1.3 Der Ansatz des W3C |
606 |
|
|
33.2 Browserunabhängiges DHTML |
607 |
|
|
33.3 Hilfsfunktionen |
610 |
|
|
33.3.1 Zugriff |
611 |
|
|
33.3.2 Verstecken |
612 |
|
|
33.3.3 Position |
613 |
|
|
33.3.4 Text ändern |
615 |
|
|
33.4 Beispiele |
616 |
|
|
33.5 Weitere Hinweise |
620 |
|
|
34 Fenster(ln) |
621 |
|
|
34.1 Fenster öffnen |
622 |
|
|
34.2 Fensteroptionen |
625 |
|
|
34.3 Anwendung: Hilfsskripten |
637 |
|
|
34.3.1 Fenster positionieren |
638 |
|
|
34.3.2 Fenster in der Ecke |
639 |
|
|
34.3.3 Fenster zentrieren |
643 |
|
|
34.4 Auf das öffnende Fenster zugreifen |
645 |
|
|
34.5 Anwendung: Sitemap |
647 |
|
|
34.6 Anwendung: Adressbuch |
650 |
|
|
35 Fenster(ln) für Fiese |
657 |
|
|
35.1 Fenster im Hintergrund |
658 |
|
|
35.1.1 Immer im Hintergrund |
658 |
|
|
35.1.2 Einmal im Hintergrund |
659 |
|
|
35.2 Fenster im Vordergrund |
660 |
|
|
35.2.1 Immer im Vordergrund |
660 |
|
|
35.2.2 Einmal im Vordergrund |
660 |
|
|
35.2.3 Manchmal im Vordergrund |
661 |
|
|
35.3 Fenster forever |
664 |
|
|
35.3.1 Fenster schließen? Schwierig! |
665 |
|
|
35.3.2 Fenster schließen? Sinnlos! |
666 |
|
|
35.4 Contra WebWasher & Co. |
669 |
|
|
36 Laufschrift |
673 |
|
|
36.1 Exkurs: Laufschrift mit HTML |
674 |
|
|
36.2 Grundsätzlicher Aufbau |
676 |
|
|
36.3 Laufschrift in der Statuszeile |
679 |
|
|
36.3.1 Einfache Variante |
679 |
|
|
36.3.2 Besser: Sonderbehandlung für Links |
681 |
|
|
36.4 Laufschrift im Textfeld |
683 |
|
|
36.4.1 Einfache Variante |
683 |
|
|
36.4.2 Besser: Links in der Laufschrift |
687 |
|
|
36.5 Laufschrift mit DHTML |
692 |
|
|
36.5.1 Einfache Variante |
692 |
|
|
36.5.2 Besser: Links direkt integriert |
695 |
|
|
37 Navigation |
701 |
|
|
37.1 Navigation mit Pulldown-Menüs |
701 |
|
|
37.2 Navigation mit DHTML |
709 |
|
|
37.2.1 Baumstrukturen |
710 |
|
|
37.3 Alternativen im Web |
715 |
|
|
37.3.1 Joust |
716 |
|
|
37.3.2 DHTML Menu Builder |
718 |
|
|
38 Warenkorb |
719 |
|
|
38.1 Datenstruktur |
720 |
|
|
38.2 Mit unsichtbaren Frames arbeiten |
723 |
|
|
38.2.1 Warenkorb füllen |
725 |
|
|
38.2.2 Artikel anzeigen |
726 |
|
|
38.2.3 Warenkorb ändern |
735 |
|
|
38.3 Mit Cookies arbeiten |
739 |
|
|
38.3.1 Warenkorb füllen |
739 |
|
|
38.3.2 Artikel anzeigen |
740 |
|
|
38.3.3 Warenkorb ändern |
745 |
|
|
38.4 Über die URL |
747 |
|
|
38.4.1 Den Warenkorb füllen |
749 |
|
|
38.4.2 Artikel anzeigen |
750 |
|
|
38.4.3 Den Warenkorb ändern |
755 |
|
|
38.5 Fazit |
757 |
|
|
39 Eingaben überprüfen I |
759 |
|
|
39.1 Theorie: Formularelemente |
759 |
|
|
39.1.1 Allgemeines |
760 |
|
|
39.1.2 Textfelder |
760 |
|
|
39.1.3 Checkboxen |
760 |
|
|
39.1.4 Radiobuttons |
761 |
|
|
39.1.5 Auswahllisten |
762 |
|
|
39.2 Vollständigkeit |
762 |
|
|
39.2.1 Vorbereitung |
763 |
|
|
39.2.2 Textfelder |
764 |
|
|
39.2.3 Checkboxen |
764 |
|
|
39.2.4 Radiobuttons |
765 |
|
|
39.2.5 Auswahllisten |
766 |
|
|
39.2.6 Globale Überprüfung |
768 |
|
|
39.3 Musterprüfung |
770 |
|
|
39.3.1 Numerische Werte |
771 |
|
|
39.3.2 Postleitzahlen |
774 |
|
|
39.3.3 Telefonnummern |
775 |
|
|
39.3.4 Geburtsdatum |
775 |
|
|
39.3.5 E-Mail-Adressen |
778 |
|
|
39.4 Reguläre Ausdrücke |
781 |
|
|
39.4.1 Theorie: RegExp & Co. |
782 |
|
|
39.4.2 Numerische Werte |
783 |
|
|
39.4.3 Postleitzahlen |
784 |
|
|
39.4.4 Telefonnummern |
784 |
|
|
39.4.5 Geburtsdatum |
784 |
|
|
39.4.6 E-Mail-Adressen |
786 |
|
|
40 Eingaben überprüfen II |
789 |
|
|
40.1 Theorie: Den Formularversand abfangen |
791 |
|
|
40.2 Überprüfung mit Fehlermeldung |
792 |
|
|
40.3 Überprüfung mit grafischer Fehlermeldung |
795 |
|
|
40.4 Überprüfung mit Korrekturmöglichkeit |
808 |
|
|
40.5 Vollautomatische Überprüfung |
813 |
|
|
41 Multimedia steuern |
825 |
|
|
41.1 Musik |
826 |
|
|
41.1.1 Einbau in HTML |
826 |
|
|
41.1.2 Standardkontrollen des Internet Explorer |
827 |
|
|
41.1.3 Standardkontrollen des Netscape Navigator |
829 |
|
|
41.1.4 Browserunabhängige Ansteuerung |
830 |
|
|
41.1.5 Anwendung: Wurlitzer |
836 |
|
|
41.2 Microsoft Windows Media Player |
837 |
|
|
41.2.1 Einbau in HTML |
838 |
|
|
41.2.2 Browserunabhängige Ansteuerung |
840 |
|
|
41.2.3 Anwendung: Heimkino |
844 |
|
|
42 Flash & Co. |
847 |
|
|
42.1 Prinzipielles |
848 |
|
|
42.2 Director |
850 |
|
|
42.2.1 Standardeinbau |
850 |
|
|
42.2.2 Erkennung mit dem Internet Explorer |
851 |
|
|
42.2.3 Erkennung mit dem Netscape Navigator |
852 |
|
|
42.2.4 Browserunabhängige Erkennung |
854 |
|
|
42.3 Flash |
856 |
|
|
42.3.1 Standardeinbau |
856 |
|
|
42.3.2 Erkennung mit dem Internet Explorer |
857 |
|
|
42.3.3 Erkennung mit dem Netscape Navigator |
858 |
|
|
42.3.4 Browserunabhängige Erkennung |
859 |
|
|
42.4 Mit Flash kommunizieren |
861 |
|
|
42.4.1 Flash ruft JavaScript |
861 |
|
|
42.4.2 JavaScript ruft Flash |
864 |
|
|
42.4.3 Beispiele |
865 |
|
|
43 Spaß serverseitig |
869 |
|
|
43.1 Variablentausch |
870 |
|
|
43.2 Anwendungen |
873 |
|
|
43.2.1 Newsticker |
874 |
|
|
43.2.2 Bankleitzahlen |
880 |
|
|
Anhang |
887 |
|
|
A Lösungen |
889 |
|
|
B Referenz |
917 |
|
|
B. 1 Das Anchor-Objekt |
919 |
|
|
B. 1.1 Allgemeines |
919 |
|
|
B. 1.2 Eigenschaften |
920 |
|
|
B.2 Das Array-Objekt |
920 |
|
|
B.2.1 Allgemeines |
921 |
|
|
B.2.2 Methoden |
921 |
|
|
B.2.3 Eigenschaften |
924 |
|
|
B.3 Das Button-Objekt |
924 |
|
|
B.3.1 Allgemeines |
924 |
|
|
B.3.2 Event-Handler |
924 |
|
|
B.3.3 Methoden |
924 |
|
|
B.3.4 Eigenschaften |
925 |
|
|
B.4 Das Checkbox-Objekt |
925 |
|
|
B.4.1 Allgemeines |
925 |
|
|
B.4.2 Event-Handler |
925 |
|
|
B.4.3 Methoden |
925 |
|
|
B.4.4 Eigenschaften |
926 |
|
|
B.5 Das Date-Objekt |
926 |
|
|
B.5.1 Allgemeines |
926 |
|
|
B.5.2 Methoden |
927 |
|
|
B.6 Das document-Objekt |
933 |
|
|
B.6.1 Allgemeines |
933 |
|
|
B.6.2 Event-Handler |
933 |
|
|
B.6.3 Methoden |
933 |
|
|
B.6.4 Eigenschaften |
935 |
|
|
B.7 Das Event-Objekt |
940 |
|
|
B.7.1 Netscape-Eigenschaften |
940 |
|
|
B.7.2 Internet Explorer-Eigenschaften |
941 |
|
|
B.8 Das FileUpload-Objekt |
943 |
|
|
B.8.1 Allgemeines |
943 |
|
|
B.8.2 Event-Handler |
943 |
|
|
B.8.3 Methoden |
943 |
|
|
B.8.4 Eigenschaften |
944 |
|
|
B.9 Das Form-Objekt |
944 |
|
|
B.9.1 Allgemeines |
944 |
|
|
B.9.2 Event-Handler |
944 |
|
|
B.9.3 Methoden |
944 |
|
|
B.9.4 Eigenschaften |
945 |
|
|
B. 10 Das Frame-Objekt |
946 |
|
|
B. 11 Das Hidden-Objekt |
946 |
|
|
B. 11.1 Allgemeines |
946 |
|
|
B. 11.2 Eigenschaften |
946 |
|
|
B. 12 Das History-Objekt |
947 |
|
|
B. 12.1 Allgemeines |
947 |
|
|
B. 12.2 Methoden |
947 |
|
|
B. 12.3 Eigenschaften |
947 |
|
|
B. 13 Das Image-Objekt |
948 |
|
|
B. 13.1 Allgemeines |
948 |
|
|
B. 13.2 Event-Handler |
948 |
|
|
B. 13.3 Eigenschaften |
948 |
|
|
B. 14 Das Layer-Objekt |
950 |
|
|
B. 14.1 Allgemeines |
950 |
|
|
B. 14.2 Event-Handler |
950 |
|
|
B. 14.3 Methoden |
950 |
|
|
B. 14.4 Eigenschaften |
952 |
|
|
B. 15 Das Link-Objekt |
954 |
|
|
B. 15.1 Allgemeines |
954 |
|
|
B. 15.2 Event-Handler |
954 |
|
|
B. 15.3 Eigenschaften |
954 |
|
|
B. 16 Das Location-Objekt |
955 |
|
|
B. 16.1 Methoden |
955 |
|
|
B. 16.2 Eigenschaften |
956 |
|
|
B. 17 Das Math-Objekt |
957 |
|
|
B. 17.1 Methoden |
957 |
|
|
B. 17.2 Eigenschaften |
960 |
|
|
B. 18 Das MimeType-Objekt |
961 |
|
|
B. 18.1 Eigenschaften |
961 |
|
|
B. 19 Das Navigator-Objekt |
961 |
|
|
B. 19.1 Methoden |
961 |
|
|
B. 19.2 Eigenschaften |
962 |
|
|
B.20 Das Number-Objekt |
963 |
|
|
B.20.1 Allgemeines |
963 |
|
|
B.20.2 Eigenschaften |
963 |
|
|
B.21 Das Object-Objekt |
964 |
|
|
B.21.1 Allgemeines |
964 |
|
|
B.21.2 Methoden |
964 |
|
|
B.21.3 Eigenschaften |
965 |
|
|
B.22 Das Option-Objekt |
965 |
|
|
B.22.1 Allgemeines |
965 |
|
|
B.22.2 Eigenschaften |
965 |
|
|
B.23 Das Password-Objekt |
966 |
|
|
B.23.1 Allgemeines |
966 |
|
|
B.23.2 Event-Handler |
966 |
|
|
B.23.3 Methoden |
966 |
|
|
B.23.4 Eigenschaften |
966 |
|
|
B.24 Das Plugin-Objekt |
967 |
|
|
B.24.1 Eigenschaften |
967 |
|
|
B.25 Das Radio-Objekt |
967 |
|
|
B.25.1 Allgemeines |
967 |
|
|
B.25.2 Event-Handler |
968 |
|
|
B.25.3 Methoden |
968 |
|
|
B.25.4 Eigenschaften |
968 |
|
|
B.26 Das RegExp-Objekt |
969 |
|
|
B.26.1 Allgemeines |
969 |
|
|
B.26.2 Eigenschaften |
969 |
|
|
B.26.3 Methoden |
970 |
|
|
B.27 Das Reset-Objekt |
971 |
|
|
B.27.1 Allgemeines |
971 |
|
|
B.27.2 Event-Handler |
971 |
|
|
B.27.3 Methoden |
971 |
|
|
B.27.4 Eigenschaften |
971 |
|
|
B.28 Das Screen-Objekt |
972 |
|
|
B.28.1 Eigenschaften |
972 |
|
|
B.29 Das Select-Objekt |
972 |
|
|
B.29.1 Allgemeines |
973 |
|
|
B.29.2 Event-Handler |
973 |
|
|
B.29.3 Methoden |
973 |
|
|
B.29.4 Eigenschaften |
973 |
|
|
B.30 Das String-Objekt |
974 |
|
|
B.30.1 Allgemeines |
974 |
|
|
B.30.2 Methoden |
974 |
|
|
B.30.3 Eigenschaften |
979 |
|
|
B.31 Das Submit-Objekt |
979 |
|
|
B.31.1 Allgemeines |
980 |
|
|
B.31.2 Event-Handler |
980 |
|
|
B.31.3 Methoden |
980 |
|
|
B.31.4 Eigenschaften |
980 |
|
|
B.32 Das Text-Objekt |
981 |
|
|
B.32.1 Allgemeines |
981 |
|
|
B.32.2 Event-Handler |
981 |
|
|
B.32.3 Methoden |
981 |
|
|
B.32.4 Eigenschaften |
981 |
|
|
B.33 Das Textarea-Objekt |
982 |
|
|
B.33.1 Allgemeines |
982 |
|
|
B.33.2 Event-Handler |
982 |
|
|
B.33.3 Methoden |
982 |
|
|
B.33.4 Eigenschaften |
983 |
|
|
B.34 Das Window-Objekt |
983 |
|
|
B.34.1 Allgemeines |
983 |
|
|
B.34.2 Event-Handler |
983 |
|
|
B.34.3 Methoden |
984 |
|
|
B.34.4 Eigenschaften |
992 |
|
|
B.35 Top-Level-Eigenschaften und -Methoden |
995 |
|
|
B.35.1 Methoden |
995 |
|
|
B.35.2 Eigenschaften |
996 |
|
|
C Quellen im Web |
997 |
|
|
C. 1 Websites |
997 |
|
|
C.2 Newsgroups |
998 |
|
|
C.3 Mailinglisten |
999 |
|
|
C.4 MyGalileo |
1000 |
|
|
Index |
1001 |
|