: Jakob Westhoff
: Plugin-Entwicklung mit jQuery
: entwickler.press
: 9783868022377
: 1
: CHF 19.90
:
: Informatik, EDV
: German
: 300
: kein Kopierschutz/DRM
: PC/MAC/eReader/Tablet
: PDF
Jedes ernst zu nehmende Webportal bedient sich heutzutage Technologien und Methoden, die sich hinter Begriffen wie Web 2.0, RIA, Ajax und Javascript verstecken. Benutzer erwarten mittlerweile selbst von einfachsten Webapplikationen ein gewisses Maß an Interaktivität und Fähigkeit zur Userkommunikation. Hier erweist sich das Javascript-Framework jQuery als besonders nützlich. Es ist äußert kompakt, schnell und gut strukturiert. Im Vergleich zu seinen Artgenossen hebt es sich durch die Konzentration auf Kernfunktionen, sowie seine Geschwindigkeit hervor. Mit dem Wandel der Internet-Präsenzen haben sich auch die Entwicklungs- und Deploymentprozesse geändert. Sogenannte 'Web2.0-Portale' erlauben dem Benutzer und gleichermaßen dem Entwickler das Hinzuschalten von Erweiterungen und neuen Funktionalitäten. Hier spielt jQuery ein weiteres seiner herausragenden Merkmale voll aus: Die Erweiterbarkeit durch Plugins. Plugins vereinfachen die Modularisierung der Applikation und fördern damit den angestrebten agilen Deploymentprozess. Der jüngste Sprössling des jQuery-Frameworks ist jQuery UI. Es kommt schon von Hause aus mit einer Vielzahl von Widgets und Animationen daher, welche schnell und einfach in ein bestehendes jQuery-Projekt integriert werden können. Darüber hinaus stellt es das nötige Handwerkszeug für die Entwicklung von eigenen wiederverwendbaren Widgets bereit. Dieses Buch beschreibt die verschiedenen Aspekte der Entwicklung von jQuery Plugins und den Aufbau von Applikationen auf deren Basis. Die Autoren identifizieren die verschiedenen elementaren Plugintypen und stellen diese detailliert vor. Zu jeder dieser Umsetzungen beschreiben Feder und Westhoff die Tricks und Kniffe, auf die sie in ihrem täglichen Umgang mit jQuery gestoßen sind und warnen vor möglichen Fallstricken. Natürlich fehlt auch ein Kapitel zum Thema Test-Driven-Development nicht.
Inhaltsverzeichnis4
Vorwort12
1 JavaScript: Ein Überblick14
1.1 Webanwendungen14
1.2 Serverseitige Webanwendungen15
1.3 Eingebettet16
1.4 JavaScript als Wunderwaffe?17
1.5 Zusammenfassung18
2 Willkommen in der Welt von jQuery20
2.1 Herunterladen und Einbinden von jQuery20
2.1.1 Download von der jQuery-Webseite21
2.1.2 Verwendung eines CDN23
2.1.3 Welcher Weg ist der bessere?25
2.2 jQuery vs. JavaScript25
2.3 Dokumententraversierung28
2.3.1 CSS-Selektoren28
2.3.2 Element-Sets31
2.3.3 Fluent Interface32
2.3.4 Traversierung der Baumstruktur32
2.3.5 jQuerys Gedächtnis für Sets34
2.4 Dokumentenmanipulation35
2.4.1 CSS-Eigenschaften35
2.4.2 Umgang mit Attributen und CSS-Klassen38
2.4.3 Erstellen neuer Elemente40
2.4.4 Elemente im DOM platzieren42
2.4.5 Inhalte von Elementen auslesen und verändern43
2.4.6 Elemente ersetzen, umhüllen oder löschen47
2.4.7 Elemente aus dem DOM lösen51
2.4.8 Optische Position und Größe51
2.4.9 Callbacks anstelle von Werten mit jQuery 1.456
2.5 Ereignisbehandlung57
2.5.1 Ereignisse registrieren mit jQuery57
2.5.2 Das Event-Objekt58
2.5.3 Ereignisregistrierungen wieder aufheben59
2.5.4 Ereignisse auslösen60
2.5.5 Umgang mit benutzerdefinierten Ereignissen61
2.5.6 Abkürzungen zur Ereignisregistrierung62
2.5.7 Ereignisnamensräume64
2.5.8 Der Weg eines Ereignisses65
2.5.9 Ereignisdelegation66
2.5.10 Ereignisse außerhalb von Elementen70
2.5.11 Die Proxy-Funktion73
2.6 Animation75
2.6.1 CSS-Eigenschaften über die Zeit verändern75
2.6.2 Relative Werte als Animationsziel76
2.6.3 Werte mit spezieller Bedeutung77
2.6.4 Mehrschrittige Animationen78
2.6.5 Animationen während der Ausführung anhalten80
2.6.6 Eine Easing-Funktion pro Eigenschaft80
2.6.7 Animieren mit Abkürzungen80
2.7 AJAX mit jQuery82
2.7.1 JSON83
2.7.2 Verschiedene Kommunikationswege85
2.7.3 Die ajax-Funktion90
2.7.4 Globale AJAX-Optionen mit ajaxSetup99
2.7.5 Abkürzungen auf dem Weg zu neuen Daten100
2.8 Zusammenfassung102
3 jQuery-Plug-ins104
3.1 Was sind jQuery-Plug-ins?104
3.2 Unterschiedliche Plug-in-Typen105
3.2.1 Neue Methoden106
3.2.2 Neue Funktionen108
3.2.3 Special Events108
3.2.4 Animations Easing-Funktionen108
3.2.5 CSS-Selektoren109
3.2.6 Widgets109
3.2.7 Effects109
3.2.8 Behaviours110
3.3 Grundregeln der Plug-in-Entwicklung110
3.3.1 Konventionen zur Namensgebung110
3.3.2 Zugriff auf die jQuery-Bibliothek112
3.3.3 Anlegen neuer Set-Methoden114
3.3.4 Anlegen neuer Funktionen115
3.3.5 Beachtung des Fluent-Interface115
3.3.6 Multiple Elemente eines Sets korrekt behandeln116
3.4 Grundgerüst117
3.5 Zusammenfassung118
4 Hello World120
4.1 Anforderungen an das Plug-in120
4.2 Grundgerüst des world-Plug-ins120
4.3 Behandlung von Optionen121
4.3.1 Implementierung der Optionsbehandlung122
4.4 Manipulation des DOM125
4.5 Das vollständige Plug-in126
4.6 Zusammenfassung127
5 Objektorientierung128
5.1 Konzept der Objektorientierung128
5.1.1 Ein Beispiel bitte!129
5.2 Klassen != Prototypen130
5.2.1 Objekte in JavaScript131
5.2.2 Prototypen134
5.2.3 Konstruktorfunktionen138
5.3 Zurück zum Bankszenario140
5.3.1 Der Prototyp für das Kundenobjekt140
5.3.2 Der Prototyp für das Kontenobjekt141
5.3.3 Anlegen neuer Kunden- und Kontenobjekte142
5.4 Prototype Chains142
5.4.1 Ketten von Prototypen143
5.4.2 Ein weiteres Hindernis: Konstruktorfunktionen145
5.5 Zurück zum Bankszenario II147
5.6 Zusammenfassung148
6 Livesearch150
6.1 Livesearch im Detail150
6.2 Aufgaben des Plug-ins151
6.3 Kategorisierung des Plug-ins153
6.3.1 Objektorientiertes Design153
6.3.2 Objektorientieru