Ajax_Biblia_ajaxbi.pdf

(2504 KB) Pobierz
Ajax. Biblia
Ajax. Biblia
Autor: Steve Holzner
TĀumaczenie: Anna Trojan
ISBN: 978-83-246-1199-7
TytuĀ oryginaĀu: Ajax Bible
Format: B5, stron: okoĀo 670
oprawa twarda
Wydawnictwo Helion
ul. Koľciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
Skutecznoľě i bezpieczeĺstwo Twoich aplikac ji
¤ Jak korzystaě z DOM?
¤ Jak tworzyě pĀywajĴce menu oraz efekty za pomocĴ CSS?
¤ Jak szyfrowaě dane w HTTP przy uŃyciu JavaScript?
Dynamiczne, efektowne i sprawne strony internetowe to dzisiaj podstawa wizerunku
kaŃdego przedsiķbiorstwa. Stworzenie takich wĀaľnie witryn umoŃliwia Ajax Ï zbir
technologii opartych na jķzyku JavaScript i XML. Dziķki zastosowaniu tej technologii,
coraz bardziej popularnej wľrd programistw, aplikacje mogĴ dziaĀaě w przeglĴdarce
internetowej tak jak te, ktre sĴ zainstalowane w komputerze uŃytkownika, a zmiana
zawartoľci strony nie wymaga jej â przeĀadowania Ò .
Ajax pozwala na komunikowanie siķ z serwerem w tle, uĀatwia tworzenie wyszukiwania
na Ńywo i umoŃliwia uaktualnianie danych bez odľwieŃania strony. Funkcje te
powodujĴ, Ńe znajduje zastosowanie tam, gdzie wyľwietlany tekst jest stale
uaktualniany, na przykĀad w aplikacjach czatowych, arkuszach kalkulacyjnych
lub formularzach zamieszczanych na serwerach oraz w wielu innych sytuacjach.
â Ajax. Biblia Ò to kompletny przewodnik zawierajĴcy praktyczne porady, proste
instrukcje i interesujĴce sztuczki dla webmasterw. UĀatwia opanowanie podstaw jķzyka
JavaScript, XML, poznanie dynamicznego HTML i CSS, ale takŃe omawia bardziej
zaawansowane zagadnienia, takie jak eliminowanie zapisywania w pamiķci podrķcznej
przeglĴdarki lub stosowanie ukrytych kontrolek dla sprawdzenia, czy uŃytkownik
widziaĀ juŃ danĴ stronķ. KorzystajĴc z tego podrķcznika, nauczysz siķ stosowaě
biblioteki Ajaksa i JavaScriptu oraz kaskadowe arkusze stylw. â Biblia Ò porusza teŃ
wszelkie istotne kwestie dotyczĴce bezpieczeĺstwa, w tym takŃe zagadnienia zwiĴzane
z uŃywaniem filtrw w Ajaksie.
¤ Wykorzystanie zaawansowanych bibliotek Ajaksa i JavaScriptu
¤ ObsĀuga XML za pomocĴ JavaScriptu
¤ Stylizacja tekstu, kolorw i tĀa za pomocĴ CSS
¤ Praca z PHP
¤ Interpolacja zmiennych w Āaĺcuchach znakw
¤ Tworzenie list argumentw o zmiennej dĀugoľci
¤ ObsĀuga kontrolek HTML
¤ Tworzenie dynamicznych tabel
¤ Bezpieczeĺstwo w aplikacjach opartych na Ajaksie
¤ Ograniczanie dostķpu za pomocĴ filtrw
Twrz strony w Ajaksie, a bķdĴ szybkie, sprawne i absolutnie bezpieczne!
692075467.002.png 692075467.003.png 692075467.004.png 692075467.005.png
Spis treści
O autorze ......................................................................................................... 13
Przedmowa ...................................................................................................... 15
Część I Podstawy Ajaksa ............................................................... 19
Rozdział 1. Wprowadzenie do Ajaksa ............................................................... 21
Co oznacza „Ajax”? ............................................................................................................................. 24
Co można zrobić za pomocą Ajaksa? .................................................................................................. 26
Tworzenie wyszukiwania na żywo opartego na Ajaksie ............................................................... 26
Tworzenie kalkulatora opartego na Ajaksie .................................................................................. 27
Rozmawianie za pomocą aplikacji czatowych opartych na Ajaksie ............................................. 28
Przetwarzanie liczb za pomocą arkuszy kalkulacyjnych ............................................................... 29
Przeglądanie strony Amazon ......................................................................................................... 31
Otrzymywanie odpowiedzi dzięki autouzupełnianiu za pomocą Ajaksa ...................................... 31
Logowanie się za pomocą Ajaksa .................................................................................................. 33
Pobieranie obrazków ...................................................................................................................... 33
Przeciąganie i upuszczanie za pomocą Ajaksa .............................................................................. 35
Gry i zabawy z Ajaksem ................................................................................................................ 39
Modyfikacja stron internetowych w locie ...................................................................................... 39
Dodanie interaktywności do map ................................................................................................... 45
Poczta elektroniczna oparta na Ajaksie .........................................................................................47
Podsumowanie ..................................................................................................................................... 47
Rozdział 2. Zapoznanie się z JavaScriptem ...................................................... 51
Jakie miejsce w Ajaksie zajmuje JavaScript? ...................................................................................... 51
Krótka historia JavaScriptu .................................................................................................................. 53
Rozpoczęcie pracy z JavaScriptem ...................................................................................................... 55
Naprawianie błędów ...................................................................................................................... 57
Komentowanie kodu ...................................................................................................................... 59
Umieszczanie kodu w plikach zewnętrznych ................................................................................ 61
Odpowiadanie na zdarzenia przeglądarki ...................................................................................... 61
Tworzenie funkcji w JavaScripcie ....................................................................................................... 64
Przekazywanie argumentów do funkcji ......................................................................................... 69
Zwracanie wartości z funkcji ......................................................................................................... 73
Przechowywanie danych w zmiennych ................................................................................................ 75
Działania na danych wykonywane za pomocą operatorów ................................................................. 78
Podejmowanie decyzji za pomocą instrukcji if .................................................................................... 81
692075467.001.png
8
Ajax. Biblia
Wykonywanie innego kodu w różnych przeglądarkach ...................................................................... 83
Praca z pętlami ..................................................................................................................................... 88
Wykonywanie pętli za pomocą for ................................................................................................ 88
Wykonywanie pętli za pomocą while ............................................................................................ 90
Podłączanie JavaScriptu do przycisków HTML .................................................................................. 93
Podsumowanie ..................................................................................................................................... 95
Rozdział 3. Tworzenie aplikacji opartych na Ajaksie ...................................... 97
Pisanie kodu w Ajaksie ........................................................................................................................ 97
Tworzenie aplikacji ........................................................................................................................ 99
Pisanie kodu w JavaScripcie ........................................................................................................ 100
Tworzenie obiektu XMLHttpRequest .......................................................................................... 101
Otwieranie obiektu XMLHttpRequest ......................................................................................... 105
Obsługa pobieranych danych ....................................................................................................... 107
Otrzymywanie danych ................................................................................................................. 111
Pobieranie danych ........................................................................................................................ 112
Inne sposoby tworzenia obiektów XMLHttpRequest .................................................................. 113
Interakcja z kodem po stronie serwera ............................................................................................... 115
Przekazywanie danych do skryptów po stronie serwera .................................................................... 117
Przekazywanie danych do serwera za pomocą metody GET ...................................................... 118
Przekazywanie danych do serwera za pomocą metody POST .................................................... 121
Wykorzystywanie Ajaksa z XML ...................................................................................................... 126
Tworzenie kodu XML .................................................................................................................. 126
Pobieranie XML ........................................................................................................................... 128
Podsumowanie ................................................................................................................................... 134
Rozdział 4. Rozszerzone techniki programowania w Ajaksie ....................... 135
Praca z wieloma jednoczesnymi żądaniami XMLHttpRequest ......................................................... 136
Wykorzystywanie wielu obiektów XMLHttpRequest ................................................................. 138
Przechowywanie obiektów XMLHttpRequest w tablicy ............................................................. 141
Wykorzystywanie funkcji wewnętrznych .................................................................................... 144
Obsługiwanie kodu w JavaScripcie przysłanego z serwera ............................................................... 150
Zwracanie kodu w JavaScripcie ................................................................................................... 151
Zwracanie obiektów JavaScriptu ................................................................................................. 154
Łączenie się z Google Suggest ........................................................................................................... 155
Wywoływanie innej domeny w Ajaksie ............................................................................................ 163
Przykład logowania ............................................................................................................................ 164
Praca z Ajaksem i żądaniami HEAD ................................................................................................. 166
Otrzymanie wszystkich danych z nagłówków ............................................................................. 166
Otrzymywanie określonych danych z nagłówka ......................................................................... 168
Eliminowanie zapisywania w pamięci podręcznej przeglądarki ........................................................ 169
Podsumowanie ................................................................................................................................... 171
Część II Ajax w szczegółach ........................................................ 173
Rozdział 5. Wprowadzenie do bibliotek Ajaksa ............................................. 175
Wykorzystywanie Ajax Utility Library ............................................................................................. 176
Otrzymywanie tekstu z serwera za pomocą funkcji getText ....................................................... 178
Otrzymywanie XML z serwera za pomocą funkcji getXml ........................................................ 184
Przesyłanie danych do serwera i otrzymywanie z powrotem tekstu ............................................ 189
Przesyłanie danych do serwera i otrzymywanie z powrotem XML ............................................ 194
Spis treści
9
Wykorzystywanie libXmlRequest do pobierania XML ..................................................................... 202
Wykorzystywanie AJAXLib do pobierania XML ............................................................................. 206
Podsumowanie ................................................................................................................................... 208
Rozdział 6. Bardziej zaawansowane biblioteki JavaScriptu ......................... 209
Wykorzystywanie biblioteki Majax ................................................................................................... 210
Wykorzystywanie biblioteki Sack ...................................................................................................... 213
Wykorzystywanie biblioteki XHConn ............................................................................................... 218
Wykorzystywanie biblioteki uniAjax ................................................................................................ 223
Wykorzystywanie biblioteki AjaxGear .............................................................................................. 225
Wykorzystywanie biblioteki AjaxRequest ......................................................................................... 230
Wykorzystywanie biblioteki Http w celu uniknięcia zapisywania danych w pamięci podręcznej .... 234
Wykorzystywanie biblioteki Sarissa do obsługi XML ...................................................................... 238
Wykorzystywanie biblioteki Interactive Website Framework do obsługi XML ............................... 242
Podsumowanie ................................................................................................................................... 244
Rozdział 7. Wykorzystywanie bibliotek Ajaksa po stronie serwera ............ 245
Praca z bibliotekami opartymi na PHP .............................................................................................. 246
Wykorzystywanie Sajax oraz PHP .............................................................................................. 246
Wykorzystywanie biblioteki Xajax oraz PHP ............................................................................. 253
Wykorzystywanie biblioteki LibAjax oraz PHP .......................................................................... 258
Praca z bibliotekami opartymi na Javie ............................................................................................. 263
Wykorzystywanie Direct Web Remoting oraz Javy .................................................................... 263
Wykorzystywanie biblioteki Ajax Tags oraz Javy ...................................................................... 266
Wykorzystywanie biblioteki SWATO oraz Javy ......................................................................... 268
Praca z Ajaksem oraz Ruby on Rails ................................................................................................. 270
Pobieranie tekstu za pomocą Ajaksa ............................................................................................ 272
Dostęp do pobranych danych w kodzie ....................................................................................... 277
Podsumowanie ................................................................................................................................... 283
Część III Ajax oraz DOM, XML, CSS i dynamiczny HTML ............... 285
Rozdział 8. DOM oraz obsługa zdarzeń ........................................................... 287
Wprowadzenie do DOM .................................................................................................................... 287
Dodawanie elementów za pomocą DOM .......................................................................................... 289
Zastępowanie elementów z wykorzystaniem DOM .......................................................................... 294
Tworzenie koszyka z zakupami opartego na Ajaksie ........................................................................ 299
Tworzenie obiektu zdarzenia myszy działającego w różnych przeglądarkach ........................... 303
Obsługa zdarzeń związanych z naciskaniem przycisku myszy ................................................... 308
Obsługa zdarzeń ruchu myszy ..................................................................................................... 311
Obsługa zdarzeń zwalniania przycisku myszy ............................................................................ 312
Pobieranie obrazków w Ajaksie ......................................................................................................... 316
Obsługa przekroczenia czasu odpowiedzi w Ajaksie ........................................................................ 319
Podsumowanie ................................................................................................................................... 324
Rozdział 9. XML oraz Ajax ............................................................................... 325
Tworzenie XML ................................................................................................................................. 325
Obsługa XML za pomocą JavaScriptu ............................................................................................... 330
Pobieranie danych z dokumentu XML .............................................................................................. 334
Obsługa białych znaków w przeglądarkach internetowych Mozilla, Netscape oraz Firefox ............ 342
Obsługa białych znaków w sposób działający we wszystkich przeglądarkach ................................. 345
10
Ajax. Biblia
Bezpośredni dostęp do danych XML ................................................................................................. 348
Dostęp do wartości atrybutów XML .................................................................................................. 353
Sprawdzanie poprawności kodu XML ............................................................................................... 356
Podsumowanie ................................................................................................................................... 359
Rozdział 10. Kaskadowe arkusze stylów oraz Ajax ....................................... 361
Menu oparte na Ajaksie ..................................................................................................................... 362
Tworzenie stylów ......................................................................................................................... 363
Praca z myszą ............................................................................................................................... 370
Pobieranie elementów menu ........................................................................................................ 376
Wyświetlanie menu ...................................................................................................................... 377
Obsługa kliknięcia elementu menu .............................................................................................. 379
Ukrywanie menu .......................................................................................................................... 380
Uwydatnianie tekstu w aplikacjach opartych na Ajaksie ................................................................... 381
Przewijający się tekst ......................................................................................................................... 385
Stylizacja tekstu za pomocą CSS ....................................................................................................... 387
Stylizacja kolorów oraz tła za pomocą CSS ...................................................................................... 390
Stylizacja położenia na stronach internetowych ................................................................................ 394
Podsumowanie ................................................................................................................................... 396
Rozdział 11. Dynamiczny HTML oraz Ajax ....................................................... 397
Tworzenie efektów powiązanych z przesunięciem kursora myszy nad element ............................... 397
Wykorzystywanie stylów dynamicznych ........................................................................................... 401
Korzystanie z document.write ............................................................................................................ 404
Wykorzystywanie metod dynamicznego HTML do uaktualnienia części strony .............................. 410
Wykorzystywanie właściwości dynamicznego HTML do uaktualniania części strony .................... 413
Wykorzystywanie zakresów tekstu do uaktualniania części strony ................................................... 418
Wykorzystywanie createElement do tworzenia nowych elementów w locie .................................... 421
Tworzenie dynamicznych tabel .......................................................................................................... 426
Przyciąganie uwagi użytkownika za pomocą animacji ...................................................................... 431
Podsumowanie ................................................................................................................................... 436
Część IV Zaawansowany Ajax ..................................................... 437
Rozdział 12. Wprowadzenie do Ajaksa oraz PHP ........................................... 439
Rozpoczęcie pracy z PHP .................................................................................................................. 439
Odsyłanie tekstu do przeglądarki ................................................................................................. 441
Odsyłanie kodu XML do przeglądarki ........................................................................................ 442
Komentowanie kodu PHP .................................................................................................................. 445
Praca ze zmiennymi ........................................................................................................................... 446
Interpolacja zmiennych w łańcuchach znaków .................................................................................. 456
Praca z tablicami ................................................................................................................................ 458
Tworzenie tablic ........................................................................................................................... 458
Kopiowanie tablic ........................................................................................................................ 461
Obsługa danych za pomocą operatorów ............................................................................................ 462
Dokonywanie wyboru za pomocą instrukcji if .................................................................................. 463
Wykorzystywanie instrukcji else ................................................................................................. 466
Wykorzystywanie instrukcji elseif ............................................................................................... 467
Wykorzystywanie instrukcji switch ................................................................................................... 469
Zgłoś jeśli naruszono regulamin