JavaScript dla webmasterow. Zaawansowane programowanie, fragmenty-ksiazek-heliona
[ Pobierz całość w formacie PDF ]
IDZ DO
PRZYK£ADOW
JavaScript dla webmasterów.
Zaawansowane programowanie
Autor: Nicholas C. Zakas
T³umaczenie: Jaros³aw Dobrzañski (wstêp, rozdz. 1 – 8),
Krzysztof Czupryñski (rozdz. 9), Daniel Kaczmarek
(rozdz. 10 – 20)
ISBN: 83-246-0280-1
Tytu³ orygina³
Format: B5, stron: 660
SPIS TREŒCI
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Kompendium wiedzy na temat jêzyka JavaScript
Model DOM i programowanie obiektowe
Tworzenie dynamicznych interfejsów u¿ytkownika
Mechanizmy komunikacji klient-serwer
JavaScript to jêzyk programowania interpretowany po stronie przegl¹darki
i wykorzystywany do tworzenia elementów stron WWW. Opracowany w firmie
Netscape, pocz¹tkowo s³u¿y³ wy³¹cznie do weryfikowania poprawnoœci danych
wprowadzanych w formularzach. Dziœ ma znacznie szersze zastosowania. Przede
wszystkim pozwala wzbogaciæ stronê WWW o elementy niedostêpne w „czystym”
HTML, a jego najnowsze wersje umo¿liwiaj¹ korzystanie z dokumentów XML oraz
komunikacjê z us³ugami sieciowymi. Z tego wzglêdu JavaScript jest niemal
nieod³¹cznym elementem nowoczesnej witryny internetowej.
Ksi¹¿ka „JavaScript dla webmasterów. Zaawansowane programowanie” to podrêcznik
opisuj¹cy wszystkie mo¿liwoœci jêzyka JavaScript. Przedstawia jego historiê i pokazuje,
jak rozwi¹zywaæ problemy, przed którymi czêsto staj¹ twórcy witryn i aplikacji WWW.
W ksi¹¿ce opisano kluczowe elementy jêzyka, takie jak zdarzenia, wyra¿enia regularne
oraz metody identyfikacji przegl¹darki WWW i interakcji z ni¹, umo¿liwiaj¹ce tworzenie
dynamicznych interfejsów u¿ytkownika. Scharakteryzowano sposoby rozszerzania
jêzyka JavaScript oraz techniki budowania mechanizmów komunikacji miêdzy klientem
i serwerem bez u¿ywania elementów poœrednicz¹cych.
Podstawowe elementy ECMAScript
Zasady programowania obiektowego
Osadzanie elementów JavaScript w kodzie strony WWW
Hierarchia modelu DOM
Korzystanie z wyra¿eñ regularnych
Detekcja typu przegl¹darki i systemu operacyjnego
Obs³uga zdarzeñ
Kontrola poprawnoœci danych z formularzy
Wykorzystywanie elementów jêzyka XML
Komunikacja miêdzy przegl¹dark¹ i serwerem oraz us³ugi sieciowe
Bezpieczeñstwo aplikacji JavaScript
Jeœli chcesz, aby Twoje aplikacje WWW dzia³a³y szybciej,
skorzystaj z mo¿liwoœci JavaScript
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
ONOWOŒCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treści
2
O autorze ............................................................................................................................................... 15
2
Wstęp .................................................................................................................................................... 17
Rozdział 1. Czym jest JavaScript? ..........................................................................................................23
Krótka historia ............................................................................................................. 24
Implementacje JavaScriptu ........................................................................................... 25
ECMAScript ............................................................................................................ 25
Model DOM ............................................................................................................ 28
Model BOM ............................................................................................................ 31
Podsumowanie ............................................................................................................ 32
Rozdział 2. Podstawy ECMAScriptu ........................................................................................................33
Składnia ...................................................................................................................... 33
Zmienne ...................................................................................................................... 34
Słowa kluczowe ........................................................................................................... 37
Słowa zarezerwowane .................................................................................................. 37
Wartości proste i referencje .......................................................................................... 37
Typy proste .................................................................................................................. 38
Operator typeof ...................................................................................................... 39
Typ Undefined ........................................................................................................ 39
Typ Null ................................................................................................................. 40
Typ Boolean ........................................................................................................... 40
Typ Number ............................................................................................................ 41
Typ String ............................................................................................................... 43
Konwersje ................................................................................................................... 44
Konwersja na ciąg znakowy ..................................................................................... 44
Konwersja na liczbę ................................................................................................ 45
Rzutowanie typów ................................................................................................... 46
Typy referencyjne ......................................................................................................... 48
Klasa Object .......................................................................................................... 48
Klasa Boolean ........................................................................................................ 49
Klasa Number ........................................................................................................ 50
Klasa String ........................................................................................................... 51
Operator instanceof ................................................................................................ 55
Operatory .................................................................................................................... 55
Operatory jednoargumentowe .................................................................................. 55
Operatory bitowe .................................................................................................... 59
Operatory logiczne .................................................................................................. 65
Operatory multiplikatywne ........................................................................................ 69
Operatory addytywne ............................................................................................... 70
4
JavaScript. Zaawansowane programowanie
Operatory porównujące ............................................................................................ 72
Operatory równości ................................................................................................. 73
Operator warunkowy ................................................................................................ 75
Operatory przypisania .............................................................................................. 75
Przecinek ............................................................................................................... 76
Instrukcje .................................................................................................................... 76
Instrukcja if ............................................................................................................ 76
Instrukcje iteracyjne ................................................................................................ 77
Etykietowanie instrukcji ........................................................................................... 79
Instrukcje break i continue ...................................................................................... 79
Instrukcja with ........................................................................................................ 80
Instrukcja switch ..................................................................................................... 81
Funkcje ....................................................................................................................... 82
Nie przeładowywać! ................................................................................................. 84
Obiekt arguments ................................................................................................... 84
Klasa Function ....................................................................................................... 85
Zamknięcia ............................................................................................................ 87
Podsumowanie ............................................................................................................ 88
Rozdział 3. Podstawy programowania obiektowego ............................................................................ 91
Terminologia obiektowa ................................................................................................ 91
Wymogi języków obiektowych ................................................................................... 92
Składniki obiektu .................................................................................................... 92
Posługiwanie się obiektami ........................................................................................... 92
Deklaracja i tworzenie egzemplarzy .......................................................................... 93
Referencje do obiektu ............................................................................................. 93
Usuwanie referencji do obiektu ................................................................................ 93
Wiązanie wczesne a wiązanie późne ......................................................................... 94
Typy obiektów .............................................................................................................. 94
Obiekty własne ....................................................................................................... 94
Obiekty wewnętrzne .............................................................................................. 105
Obiekty hosta ....................................................................................................... 111
Zakres ...................................................................................................................... 112
Publiczny, prywatny i chroniony .............................................................................. 112
Statyczny nie jest statyczny ................................................................................... 112
Słowo kluczowe this .............................................................................................. 113
Definiowanie klas i obiektów ....................................................................................... 114
Wzorzec fabryki ..................................................................................................... 114
Wzorzec konstruktora ............................................................................................ 116
Wzorzec prototypu ................................................................................................ 117
Hybrydowy wzorzec konstruktor-prototyp ................................................................. 118
Metoda dynamicznego prototypu ............................................................................ 119
Hybrydowy wzorzec fabryki ..................................................................................... 120
Którego wzorca używać? ........................................................................................ 121
Praktyczny przykład ............................................................................................... 121
Modyfikowanie obiektów ............................................................................................. 123
Tworzenie nowej metody ........................................................................................ 124
Redefiniowanie istniejących metod ......................................................................... 125
Bardzo późne wiązanie .......................................................................................... 126
Podsumowanie .......................................................................................................... 126
Spis treści
5
Rozdział 4. Dziedziczenie ....................................................................................................................... 129
Dziedziczenie w praktyce ............................................................................................ 129
Implementacja dziedziczenia ....................................................................................... 130
Sposoby dziedziczenia .......................................................................................... 131
Bardziej praktyczny przykład ................................................................................... 137
Alternatywne wzorce dziedziczenia ............................................................................... 142
zInherit ................................................................................................................ 142
xbObject .............................................................................................................. 146
Podsumowanie .......................................................................................................... 150
Rozdział 5. JavaScript w przeglądarce ................................................................................................ 151
JavaScript w kodzie HTML ........................................................................................... 151
Znacznik <script/> ............................................................................................... 151
Format plików zewnętrznych ................................................................................... 152
Kod osadzony a pliki zewnętrzne ............................................................................ 153
Umiejscowienie znaczników ................................................................................... 154
Ukrywać albo nie ukrywać ...................................................................................... 155
Znacznik <noscript/> ............................................................................................ 156
Zmiany w XHTML .................................................................................................. 157
JavaScript w SVG ....................................................................................................... 159
Podstawy SVG ...................................................................................................... 159
Znacznik <script/> w SVG ..................................................................................... 161
Umiejscowienie znaczników <script/> w SVG .......................................................... 161
Obiektowy model przeglądarki ..................................................................................... 162
Obiekt window ...................................................................................................... 162
Obiekt document .................................................................................................. 174
Obiekt location ..................................................................................................... 178
Obiekt navigator ................................................................................................... 180
Obiekt screen ....................................................................................................... 182
Podsumowanie .......................................................................................................... 182
Rozdział 6. Podstawy modelu DOM ....................................................................................................... 183
Co to jest DOM? ........................................................................................................ 183
Wprowadzenie do XML .......................................................................................... 183
Interfejs API dla XML ............................................................................................. 187
Hierarchia węzłów ................................................................................................. 187
Modele DOM w konkretnych językach ..................................................................... 190
Obsługa modelu DOM ................................................................................................ 191
Korzystanie z modelu DOM ......................................................................................... 191
Dostęp do węzłów dokumentu ............................................................................... 191
Sprawdzanie typu węzła ........................................................................................ 193
Postępowanie z atrybutami .................................................................................... 193
Dostęp do konkretnych węzłów .............................................................................. 195
Tworzenie węzłów i manipulowanie nimi .................................................................. 197
Elementy funkcjonalne HTML w modelu DOM ............................................................... 202
Atrybuty jako właściwości ...................................................................................... 203
Metody do pracy z tabelami ................................................................................... 203
Przemierzanie w modelu DOM ..................................................................................... 206
Obiekt NodeIterator .............................................................................................. 206
TreeWalker ........................................................................................................... 211
6
JavaScript. Zaawansowane programowanie
Wykrywanie zgodności z modelem DOM ....................................................................... 213
Poziom 3 modelu DOM ............................................................................................... 215
Podsumowanie .......................................................................................................... 215
Rozdział 7. Wyrażenia regularne ......................................................................................................... 217
Obsługa wyrażeń regularnych ...................................................................................... 217
Korzystanie z obiektu RegExp ................................................................................ 218
Wyrażenia regularne w standardowych metodach typu String .................................... 219
Proste wzorce ............................................................................................................ 221
Metaznaki ............................................................................................................ 221
Używanie znaków specjalnych ................................................................................ 221
Klasy znaków ....................................................................................................... 222
Kwantyfikatory ...................................................................................................... 225
Złożone wzorce .......................................................................................................... 229
Grupowanie .......................................................................................................... 229
Referencje wsteczne ............................................................................................. 230
Przemienność ....................................................................................................... 231
Grupy nieprzechwytujące ....................................................................................... 233
Wyprzedzenia ....................................................................................................... 234
Granice ................................................................................................................ 235
Tryb wielowierszowy .............................................................................................. 236
Istota obiektu RegExp ................................................................................................ 237
Właściwości egzemplarzy ....................................................................................... 237
Właściwości statyczne ........................................................................................... 238
Typowe wzorce ........................................................................................................... 240
Kontrola poprawności dat ...................................................................................... 240
Kontrola poprawności danych karty kredytowej ........................................................ 242
Kontrola poprawności adresu e-mail ....................................................................... 246
Podsumowanie .......................................................................................................... 247
Rozdział 8. Wykrywanie przeglądarki i systemu operacyjnego ...................................................... 249
Obiekt navigator ........................................................................................................ 249
Metody wykrywania przeglądarki .................................................................................. 250
Wykrywanie obiektów/możliwości ........................................................................... 250
Wykrywanie na podstawie ciągu User-Agent ............................................................ 251
(Niezbyt) krótka historia ciągu User-Agent .................................................................... 251
Netscape Navigator 3.0 i Internet Explorer 3.0 ........................................................ 252
Netscape Communicator 4.0 i Internet Explorer 4.0 ................................................ 253
Internet Explorer 5.0 i nowsze wersje ..................................................................... 254
Mozilla ................................................................................................................. 254
Opera .................................................................................................................. 256
Safari .................................................................................................................. 257
Epilog .................................................................................................................. 258
Skrypt wykrywający przeglądarkę ................................................................................. 258
Metodyka ............................................................................................................. 258
Pierwsze kroki ...................................................................................................... 259
Wykrywanie przeglądarki Opera .............................................................................. 261
Wykrywanie przeglądarek Konqueror i Safari ........................................................... 263
Wykrywanie przeglądarki Internet Explorer ............................................................... 266
Wykrywanie przeglądarki Mozilla ............................................................................. 267
Wykrywanie przeglądarki Netscape Communicator 4.x ............................................. 268
[ Pobierz całość w formacie PDF ]