Kurs jQuery. Część 3: Dynamiczna witryna. AJAX i efekty interfejsu
Nie ma już obecnie nowoczesnej aplikacji sieciowej, która nie korzystałaby z technologi AJAX i cieszących oko efektów wizualnych. Niestety, niskopoziomowa obsługa obu zagadnień jest żmudna i wymaga znajomości wielu szczegółowych kwestii. Biblioteka jQuery może tę pracę znacznie ułatwić, dostarczając prosty i zwięzły interfejs. Przyjrzyjmy się więc bliżej, jak stworzyć dynamiczną witrynę internetową z wykorzystaniem narzędzi JavaScriptu.
Wprowadzenie
Wzrost popularności technologii AJAX przypadł na rok 2005, wraz z pojawieniem się usług firmy Google takich jak Gmail i Maps, choć sam mechanizm był dostępny w przeglądarkach internetowych już wcześniej. Dziś trudno sobie wyobrazić zaawansowane aplikacje internetowe bez tej technologii. Korzystanie z niej nie jest jednak usłane różami z dwóch zasadniczych powodów. Po pierwsze, Internet Explorer w wersji 6 i starszych wymaga użycia innego sposobu tworzenia obiektu JavaScript XMLHttpRequest odpowiedzialnego za komunikację z serwerem. Po drugie, wspomniany obiekt wymusza obsługę kilku stanów, co wiąże się z koniecznością poznania szczegółów jego budowy.
Korzystając z jQuery, unikamy wspomnianych problemów, gdyż biblioteka ukrywa przed nami całą, zbędną z punktu widzenia dewelopera aplikacji sieciowej, „bazę technologiczną”. Nie musimy nawet znać niskopoziomowego obiektu odpowiedzialnego za komunikację. Z odnoszących się do niego kwestii warto jedynie pamiętać o tym, że obecnie żądania ajaksowe za pomocą obiektu XMLHttpRequest mogą być zasadniczo realizowane tylko w obrębie tej samej domeny.
Gdy już pobierzemy dane, warto wyświetlić je użytkownikowi w przyjazny sposób, najlepiej wskazując miejsce dokonania zmian. Przeglądarki nie zawierają specjalnych obiektów efektów, więc wszystkie operacje trzeba by realizować ręcznie, tworząc dodatkowy kod wykonywany asynchronicznie (by nie blokować interfejsu użytkownika), wielokrotnie w ciągu sekundy. Zadanie to nie należy do najprostszych, szczególnie dla osób nie znających szczegółów działania DOM i funkcji czasowych JavaScript.
Także w tym aspekcie jQuery oferuje swoją pomoc, definiując kilka efektów wizualnych i dostarczając metody pozwalające w prosty sposób realizować dowolnie złożone kombinacje. W dalszej części artykułu pokażemy, jak wykorzystać te mechanizmy do tworzenia własnych efektów.
«poprzednia 1 2 3 4 ... 10 następna »
Polecamy
Reklama
Komentarze
Aby dodać komentarz, musisz podać swój nick, treść komentarza oraz poprawnie przepisać oba słowa z obrazka
(słowa muszą być rozdzielone spacją).
W treści komentarza można używać języka formatowania BBcode.
Popularne
MSWiA zamówiło narzędzia do „złamania” Tora i podsłuchiwania internautów. Czy złamało przy tym prawo?
89
Korea Północna: korzystasz z telefonu komórkowego? Jesteś więc zbrodniarzem wojennym
5
Nowa polityka prywatności Google'a już za miesiąc wejdzie w życie. Mamy się czego bać?
16
Firefox 10 już jest. Wiele atrakcji dla programistów, użytkownicy raczej nic nie zauważą
9
Pobieraczek.pl pozwie internautów, którzy nie chcą płacić abonamentu
1451
Linux wypiera z korporacyjnych serwerów już nie tylko Uniksy, ale i Windows
11
Źle się dzieje z Chrome, ze stabilnością coraz gorzej. Gdzie się podziała słynna izolacja procesów?
23
MSWiA zamówiło narzędzia do „złamania” Tora i podsłuchiwania internautów. Czy złamało przy tym prawo?
89
[Aktualizacja] Facebook zablokował Demotywatory.pl. W czym zawiniły?
36
FBI zamknęło Megaupload. Anonimowi dali się sprowokować. Teraz ich akcja uzasadni potrzebę SOPA?
17
Pobieraczek.pl pozwie internautów, którzy nie chcą płacić abonamentu
1451
Rząd Tuska zablokował dostęp do tańszych leków z internetowych aptek
61
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
15
„Donald matole, twój rząd dopadną kibole” – hakerska elita przyłącza się do walki z ACTA
23
Społeczność
hipertracker @slawek22, ORM wcale nie musi tworzyć nieoptymalnych kwerend. Poza tym...
Rumcajs Kolejna PRowska ściema Donka. Już mnie krew zalewa.
Artykuł 41...
zalesz o Pan Sławek :)
Patrzę nic się nie zmieniło, w sumie to nic się nie...
slawek22 Jeszcze taka dygresja na poparcie tezy, akurat sobie czytałem o node...
slawek22 Tylko po co mi 5, 10 albo nawet 15 razy szybszy JRuby skoro całą "moc...
pobieraczek.pl zapłacicie wszyscy ;D
hipertracker @Tuner, nie rozśmieszaj mnie że PHP jest szybszy od Ruby powołując się te...
- gardius: Dobra hurtownia sportowa (1)
- gardius: Tanie książki gdzie warto kupować? (1)
- Najdmen.pl: PROMOCJA, 500 DOMEN .EU ZA 1 PLN NETTO ! (1)
- VMLine: [Oferta] Serwery VPS Xen-HVM/OpenVZ z darmową administracją (2)
- Marek: Generowanie PDFa (2)
- Marek: problem z menu (2)
- Marek: Własne checkboxy w HTML,CSS (1)
Polecane książki
Praca
Obsługa księgowa z językiem niemieckim
Tech Support Engineer with fluent English and German, French, Italian or Spanish
Młodszy Specjalista w Dziale Należności ze znajomością języka francuskiego
Analityk Baz Danych i Systemów Monitorowania
Menedżer ds. Klienta Biznesowego
Starszy Programista Aplikacji Internetowych/Team Leader
Czytaj Webhosting
Chcesz być na bieżąco z naszymi informacjami? Zapisz się na Newsletter.
Zarejestruj domenę
Sprawdź dostępność swojej domeny:
| .pl: | 0 zł | .com: | 19.90 zł | |
|---|---|---|---|---|
| .com.pl: | 0 zł | .eu: | 19.90 zł |









#1 matiiiiii 2009-09-09 10:39:09 0
IP: 83.13.247.[...] Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; pl; rv:1.9.0.13) Gecko/2009073021 Firefox/3.0.13
#2 albatros® 2009-09-09 15:24:08 0
IP: 87.205.240.[...] Opera/9.80 (X11; Linux i686; U; pl) Presto/2.2.15 Version/10.10
#3 Marcin Modestowicz® 2009-09-12 10:50:30 0
IP: 83.9.188.[...] Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.0.13) Gecko/2009073022 Firefox/3.0.13 (.NET CLR 3.5.30729)
#4 MicNeo® 2009-09-21 21:26:07 0
IP: 89.174.30.[...] Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3
#5 archer 2010-03-19 11:10:25 0
IP: 193.19.165.[...] Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2) Gecko/20100115 Firefox/3.6
#6 starr® 2011-01-02 10:57:48 0
IP: 83.18.228.[...] Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.10 (KHTML, like Gecko) Chrome/8.0.552.224 Safari/534.10