Zaawansowane techniki jezyka JavaScript Wydanie II.pdf

(729 KB) Pobierz
Tytuł oryginału: Pro JavaScript Techniques, Second Edition
Tłumaczenie: Rafał Szpoton
ISBN: 978-83-283-2086-4
Original edition copyright 2015 by John Resig, Russ Ferguson, and John Paxton.
All rights reserved.
Polish edition copyright © 2016 by HELION SA.
All rights reserved.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie
ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/ztejs2.zip
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/ztejs2
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis tre ci
O autorach ...................................................................................................... 11
O recenzentach technicznych .......................................................................... 13
Podzi kowania ................................................................................................ 15
Rozdzia 1. Profesjonalne techniki w JavaScript ................................................................ 17
Jak tu dotarliśmy? ....................................................................................................................... 18
Współczesny JavaScript ............................................................................................................. 19
Rozkwit bibliotek ................................................................................................................. 20
Więcej niż wzmianka o rozwiązaniach mobilnych ......................................................... 21
Dokąd zmierzamy? .............................................................................................................. 22
Co nas czeka wkrótce? ............................................................................................................... 22
Podsumowanie ............................................................................................................................ 23
Rozdzia 2. Funkcje, cechy i obiekty .................................................................................. 25
Cechy języka ................................................................................................................................ 25
Referencje oraz wartości ..................................................................................................... 25
Zakres .................................................................................................................................... 27
Kontekst ................................................................................................................................ 29
Domknięcia ........................................................................................................................... 30
Przeciążenie funkcji oraz sprawdzanie typów ................................................................. 33
Nowe narzędzia obiektowe ....................................................................................................... 35
Obiekty .................................................................................................................................. 35
Modyfikacja obiektów ......................................................................................................... 36
Podsumowanie ............................................................................................................................ 38
Rozdzia 3. Tworzenie kodu do wielokrotnego u ytku ...................................................... 39
Obiektowy JavaScript ................................................................................................................. 39
Dziedziczenie ........................................................................................................................ 43
Widoczność składowych obiektu ...................................................................................... 47
Przyszłość obiektowego JavaScript .................................................................................... 49
Kup książkę
Poleć książkę
SPIS TRE CI
Opakowanie kodu w JavaScript ................................................................................................ 49
Przestrzenie nazw ................................................................................................................. 49
Wzorzec modułowy ............................................................................................................. 50
Wyrażenia funkcyjne wywoływane natychmiast ............................................................ 51
Podsumowanie ............................................................................................................................ 54
Rozdzia 4. Usuwanie b dów z kodu JavaScript ............................................................... 55
Narzędzia testujące ..................................................................................................................... 55
Konsola .................................................................................................................................. 56
Wykorzystanie funkcji konsoli .......................................................................................... 58
Debugger ...................................................................................................................................... 60
Inspektor DOM .................................................................................................................... 60
Analizator sieci ..................................................................................................................... 60
Oś czasu ................................................................................................................................. 61
Profiler ................................................................................................................................... 62
Podsumowanie ............................................................................................................................ 63
Rozdzia 5. Obiektowy model dokumentu ......................................................................... 65
Wprowadzenie do obiektowego modelu dokumentu ........................................................... 65
Struktura DOM .................................................................................................................... 67
Relacje w modelu DOM ...................................................................................................... 68
Dostęp do elementów DOM ..................................................................................................... 70
Odnajdywanie elementów za pomocą selektora CSS ..................................................... 72
Oczekiwanie na wczytanie modelu DOM strony HTML ..................................................... 73
Oczekiwanie na wczytanie strony ...................................................................................... 73
Oczekiwanie na właściwe zdarzenie .................................................................................. 74
Pobieranie zawartości Elementu .............................................................................................. 74
Pobieranie tekstu Elementu ................................................................................................ 74
Pobieranie kodu HTML elementu .................................................................................... 76
Praca z atrybutami elementu .................................................................................................... 77
Pobieranie i ustawianie wartości atrybutu ....................................................................... 77
Modyfikacja modelu DOM ....................................................................................................... 80
Tworzenie węzłów za pomocą DOM ................................................................................ 80
Wstawianie do drzewa DOM ............................................................................................. 81
Wstawianie HTML do drzewa DOM ...................................................................................... 82
Usuwanie węzłów z drzewa DOM ..................................................................................... 83
Obsługa znaków niewidocznych w DOM ........................................................................ 84
Proste przeglądanie drzewa DOM ..................................................................................... 85
Podsumowanie ............................................................................................................................ 87
Rozdzia 6. Zdarzenia ........................................................................................................ 89
Wprowadzenie do zdarzeń JavaScript ..................................................................................... 89
Stos, kolejka oraz pętla zdarzeń ......................................................................................... 90
Fazy zdarzeń ......................................................................................................................... 90
Podłączanie procedur nasłuchu zdarzeń ................................................................................. 92
Dowiązywanie tradycyjne ................................................................................................... 92
Dowiązywanie DOM: rekomendacja W3C ...................................................................... 96
Odwiązywanie zdarzeń ....................................................................................................... 97
6
Kup książkę
Poleć książkę
SPIS TRE CI
Wspólne cechy zdarzeń ............................................................................................................. 98
Obiekt zdarzenia .................................................................................................................. 98
Wyłączenie bąbelkowania zdarzeń .................................................................................... 98
Zmiana domyślnych akcji przeglądarki ............................................................................ 99
Delegacja zdarzeń .............................................................................................................. 101
Obiekt zdarzenia ....................................................................................................................... 102
Właściwości ogólne ........................................................................................................... 102
Właściwości związane z myszką ...................................................................................... 103
Właściwości związane z klawiaturą ................................................................................. 104
Rodzaje zdarzeń ........................................................................................................................ 105
Zdarzenia związane ze stroną ........................................................................................... 106
Zdarzenia interfejsu użytkownika ................................................................................... 107
Zdarzenia myszy ................................................................................................................ 107
Zdarzenia klawiatury ......................................................................................................... 109
Zdarzenia formularzy ........................................................................................................ 109
Dostępność zdarzeń ........................................................................................................... 110
Podsumowanie .......................................................................................................................... 110
Rozdzia 7. JavaScript a walidacja formularzy ................................................................. 111
Walidacja formularzy w HTML oraz CSS ............................................................................ 111
CSS ....................................................................................................................................... 113
Walidacja formularzy za pomocą JavaScript ........................................................................ 114
Walidacja a użytkownicy .................................................................................................. 117
Zdarzenia walidacji ............................................................................................................ 118
Dostosowywanie walidacji ...................................................................................................... 120
Zapobieganie walidacji formularzy ................................................................................. 120
Podsumowanie .......................................................................................................................... 121
Rozdzia 8. Wprowadzenie do Ajaksa ............................................................................. 123
Używanie Ajaksa ....................................................................................................................... 124
Żądania HTTP .................................................................................................................... 124
Odpowiedź HTTP .............................................................................................................. 129
Podsumowanie .......................................................................................................................... 131
Rozdzia 9. Narz dzia do tworzenia aplikacji internetowych .......................................... 133
Tworzenie rusztowania projektu ............................................................................................ 134
NPM jest podstawą wszystkich narzędzi ............................................................................... 134
Generatory ................................................................................................................................. 134
Kontrola wersji ................................................................................................................... 135
Dodawanie plików, ich modyfikacje oraz pierwsze zatwierdzenie zmian ....................... 136
Podsumowanie .......................................................................................................................... 139
Rozdzia 10. AngularJS oraz testowanie ............................................................................ 141
Widoki oraz kontrolery ........................................................................................................... 143
Zdalne źródła danych ............................................................................................................... 145
Trasy ........................................................................................................................................... 146
Parametry tras ........................................................................................................................... 148
Testowanie aplikacji ................................................................................................................. 149
7
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin