80 sposobow na Ajax.pdf

(810 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TREœCI
80 sposobów na Ajax
Autor: Bruce Perry
ISBN: 83-246-0557-6
Tytu³ orygina³u:
Ajax Hacks:
Tips & Tools for Creating Responsive Web Sites
Format: B5, stron: 424
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Techniki tworzenia nowoczesnych aplikacji internetowych
• Przygotowywanie wygodnych w obs³udze formularzy
• Integracja witryny z Google Maps
• Zarz¹dzanie po³¹czeniami sieciowymi
Ajax to nazwa technologii powsta³ej w wyniku po³¹czenia jêzyka JavaScript, XML oraz
kaskadowych arkuszy stylów. Jej wdro¿enie pozwala wyeliminowaæ ze stron WWW
jedn¹ z ich najbardziej irytuj¹cych cech, czyli koniecznoœæ prze³adowywania zawartoœci
po ka¿dej zmianie. Umiejêtne wykorzystanie mo¿liwoœci Ajaksa sprawia, ¿e aplikacje
internetowe przypominaj¹ „zwyk³e” programy dla systemów Windows lub Mac OS.
Dziêki zastosowaniu Ajaksa aplikacja internetowa dzia³a zdecydowanie szybciej,
a po³¹czenia z serwerem nie przeszkadzaj¹ u¿ytkownikowi w pracy. £atwiejsza jest
tak¿e dynamiczna zmiana elementów w ró¿nych czêœciach strony. Rozwi¹zania oparte
na Ajaksie wprowadzono w wielu dziedzinach, takich jak blogi, narzêdzia s³u¿¹ce do
nauki, newslettery oraz ma³e portale internetowe.
W ksi¹¿ce „80 sposobów na Ajax” znajdziesz przyk³ady zastosowania tej techniki
w tworzeniu interesuj¹cych i nieszablonowych witryn WWW. Czytaj¹c j¹, dowiesz siê,
jak sprawiæ, aby witryny WWW by³y bardziej interaktywne, a aplikacje WWW dzia³a³y
dok³adnie tak jak aplikacje desktopowe. Nauczysz siê korzystaæ z interfejsów
programistycznych witryn Google Maps, Yahoo! Maps i Geo URL oraz obs³ugiwaæ sesje
i cookies z poziomu Ajaksa. Poznasz równie¿ metody weryfikowania poprawnoœci
danych wprowadzanych do formularzy oraz techniki ³¹czenia Ajaksa z innymi
nowoczesnymi narzêdziami, takimi jak Ruby on Rails.
• Tworzenie interaktywnych formularzy
• Po³¹czenia z Google Maps i Yahoo! Maps
• Korzystanie z us³ugi Geo URL
• Obs³uga plików cookies
• Przegl¹danie kana³ów RSS
• Integracja z aplikacjami sieciowymi napisanymi w Javie
• Korzystanie z bibliotek Prototype i Rico
• Po³¹czenie Ajaksa z Ruby on Rails
• Wykorzystanie biblioteki script.aculo.us do tworzenia efektów wizualnych
Twórz szybkie, wydajne i wygodne w obs³udze aplikacje sieciowe
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOœCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Koœciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
Przedmowa ..................................................................................................................................... 7
O autorze ......................................................................................................................................... 9
Wstęp ............................................................................................................................................. 11
Rozdział 1. Podstawy technologii Ajax ...................................................................................... 17
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Określenie zgodności przeglądarki internetowej za pomocą obiektu żądania ..... 21
Użycie obiektu żądania do przekazania danych POST do serwera ....................... 24
Użycie własnej biblioteki z XMLHttpRequest ............................................................ 29
Otrzymywanie danych w postaci XML ....................................................................... 32
Pobieranie zwykłych starych ciągów tekstowych ...................................................... 37
Otrzymywanie danych w postaci liczb ........................................................................ 40
Otrzymywanie danych w formacie JSON ................................................................... 45
Obsługa błędów obiektu żądania ................................................................................. 51
Zagłębienie się w odpowiedź HTTP ............................................................................ 56
Generowanie stylizowanej wiadomości wykorzystującej plik arkusza stylów .... 61
Generowanie wiadomości stylizowanej „w locie” ..................................................... 66
Rozdział 2. Formularze sieciowe ................................................................................................. 71
12. Wysyłanie do serwera wartości pól tekstowych lub elementów textarea
bez odświeżania przeglądarki ..................................................................................... 71
13. Wyświetlanie wartości pola tekstowego lub elementu textarea
za pomocą danych serwera ......................................................................................... 78
14. Wysyłanie do serwera wybranych wartości z listy
bez korzystania z komunikacji dwustronnej ............................................................ 84
15. Dynamiczne generowanie nowej listy wyborów za pomocą danych serwera ..... 91
16. Rozbudowa istniejącej listy wyboru ............................................................................. 98
17. Wysyłanie do serwera wartości pól wyboru
bez konieczności korzystania z komunikacji dwustronnej .................................. 103
18. Dynamiczne generowanie nowej grupy pól wyboru
na podstawie danych z serwera ................................................................................ 111
Spis treści
|
3
19. Zapełnienie istniejącej grupy pól wyboru danymi z serwera ................................ 117
20. Zmiana nieuporządkowanych list za pomocą odpowiedzi HTTP ....................... 124
21. Wysyłanie do komponentu serwera wartości ukrytych znaczników ................... 131
Rozdział 3. Sprawdzanie poprawności ..................................................................................... 137
22. Sprawdzanie poprawności pól tekstowych i elementów textarea
pod kątem wystąpienia pustych pól ........................................................................ 137
23. Sprawdzanie poprawności składni adresu e-mail ................................................... 139
24. Sprawdzanie poprawności unikalnych nazw użytkowników ............................... 149
25. Sprawdzanie poprawności numeru karty kredytowej ............................................ 152
26. Sprawdzanie poprawności kodu bezpieczeństwa karty kredytowej ................... 160
27. Sprawdzanie poprawności kodu pocztowego .......................................................... 164
Rozdział 4. Super sposoby dla programistów sieciowych ..................................................... 169
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
Uzyskanie dostępu do API Google Maps ................................................................. 169
Użycie obiektu żądania API Google Maps ............................................................... 171
Użycie Ajaksu z Google Maps i Yahoo! Maps .......................................................... 177
Wyświetlanie danych XML pobranych z witryny Weather.com ............................. 186
Użycie Ajaksu z Yahoo! Maps i GeoURL .................................................................. 193
Debugowanie w przeglądarce Firefox
znaczników wygenerowanych przez Ajax............................................................... 197
Pobranie kodu pocztowego ......................................................................................... 200
Tworzenie dużych, łatwych w obsłudze zakładek .................................................. 207
Używanie trwałego magazynu danych po stronie klienta dla aplikacji Ajax ..... 208
Sterowanie historią przeglądarki internetowej za pomocą iframes ...................... 211
Wysyłanie wartości cookie do programu serwera ................................................... 214
Użycie XMLHttpRequest do wydobycia cen energii ze strony internetowej ..... 221
Wysyłanie wiadomości e-mail za pomocą obiektu XMLHttpRequest ................. 226
Odszukanie informacji lokalizacyjnych przeglądarki ............................................. 232
Tworzenie czytnika kanałów RSS ............................................................................... 235
Rozdział 5. Direct Web Remoting (DWR) dla zapaleńców Javy ............................................. 243
43. Integracja DWR z aplikacją sieciową Javy ................................................................. 243
44. Użycie DWR do zapełnienia listy wyboru wartościami z tablicy Javy ................ 246
45. Użycie DWR do utworzenia listy select
na podstawie wartości z obiektu Map Javy ............................................................ 251
46. Wyświetlanie na stronie internetowej kluczy
i wartości z obiektu HashMap Javy ......................................................................... 253
47. Użycie DWR do zapełnienia listy uporządkowanej
wartościami z tablicy Javy ......................................................................................... 256
4
|
Spis treści
48. Dostęp do własnego obiektu Javy z poziomu JavaScript ....................................... 260
49. Wywołanie wbudowanego obiektu Javy
z poziomu JavaScriptu za pomocą DWR ................................................................ 265
Rozdział 6. Sposoby na Ajax z bibliotekami Prototype i Rico ................................................ 269
50.
51.
52.
53.
Użycie narzędzi Ajax biblioteki Prototype we własnych aplikacjach .................. 269
Uaktualnienie zawartości elementu HTML danymi pochodzącymi z serwera .. 274
Tworzenie obserwatorów pól strony internetowej .................................................. 278
Użycie biblioteki Rico do uaktualnienia kilku elementów
za pomocą jednej odpowiedzi Ajax .................................................................................282
54. Utworzenie księgarni typu „przeciągnij i upuść” .................................................... 286
Rozdział 7. Praca z Ajaksem wraz z Ruby on Rails ................................................................. 293
55.
56.
57.
58.
59.
60.
Instalacja Ruby on Rails ................................................................................................ 294
Monitorowanie zdalnych wywołań za pomocą platformy Rails............................... 299
Udostępnienie kodu JavaScript aplikacjom platformy Rails .................................. 305
Dynamiczne generowanie listy select w szablonie platformy Rails ..................... 307
Określenie, czy technologia Ajax jest wywoływana w żądaniu ............................ 311
Dynamiczne generowanie listy select za pomocą danych
pochodzących z bazy danych .................................................................................... 312
61. Okresowe przeprowadzanie zdalnych wywołań ..................................................... 316
62. Dynamiczne przeglądanie informacji o żądaniu dla obiektu XMLHttpRequest .....320
Rozdział 8. Urok biblioteki JavaScript script.aculo.us ............................................................ 325
63. Integracja efektów wizualnych biblioteki script.aculo.us z aplikacją Ajax .......... 325
64. Tworzenie okna logowania, które „wzrusza się”,
gdy zostaną podane nieprawidłowe dane .............................................................. 328
65. Utworzenie autouzupełniającego się pola za pomocą biblioteki script.aculo.us .....332
66. Tworzenie pola edycji tekstu ....................................................................................... 336
67. Utworzenie formularza sieciowego, który znika po wysłaniu .............................. 339
Rozdział 9. Opcje i wydajność ................................................................................................... 341
68.
69.
70.
71.
Naprawa przycisku Wstecz przeglądarki internetowej w aplikacjach Ajax ....... 342
Obsługa zakładek i przycisków Wstecz za pomocą RSH ....................................... 349
Ustawienie ograniczenia czasu dla żądania HTTP .................................................. 360
Usprawnienie możliwości obsługi, wydajności
i niezawodności dużych aplikacji JavaScript .......................................................... 363
72. Zaciemnianie kodu JavaScript i Ajax ......................................................................... 369
73. Użycie dynamicznego znacznika script do przeprowadzenia żądań
usług sieciowych ......................................................................................................... 374
74. Konfiguracja serwera Apache ze względu na kwestie związane
z przejściami między różnymi domenami .............................................................. 379
Spis treści
|
5
75. Uruchomienie wewnątrz przeglądarki internetowej
mechanizmu wyszukiwania ...................................................................................... 381
76. Użycie deklaratywnych znaczników za pomocą mechanizmu XForms
zamiast znacznika script ............................................................................................ 386
77. Utworzenie bufora po stronie klienta ........................................................................ 392
78. Tworzenie autouzupełniającego się pola ................................................................... 400
79. Dynamiczne wyświetlenie większej ilości informacji na dany temat ................... 403
80. Użycie ciągów tekstowych i tablic w celu dynamicznego
generowania kodu HTML ......................................................................................... 406
Skorowidz ................................................................................................................................. 411
6
|
Spis treści
Zgłoś jeśli naruszono regulamin