Část 1 Moderní JavaScript



Podobné dokumenty
Formuláře. Internetové publikování

VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA

Obsah. Úvodem 9 Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10

1. Úvod do Ajaxu 11. Jak Ajax funguje? 13

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Responzivní web. Co je mobilní verze webové stránky?

České vysoké učení technické v Praze Fakulta elektrotechnická Katedra počítačové grafiky a interakce. Bakalářská práce Hodnocení restaurací

Vývoj Internetových Aplikací

Identifikátor materiálu: ICT-3-55

Vývoj Internetových Aplikací

DATA ARTICLE. AiP Beroun s.r.o.

- 1 - Smlouva o dílo. uzavřená podle 536 a násl. obchodního zákoníku v účinném znění

Základní pojmy spojené s webovým publikováním ~ malý slovníček pojmů~ C3231 Základy WWW publikování Radka Svobodová, Stanislav Geidl

INTERNET. Vypracoval: Mgr. Marek Nývlt

Obsah. Předmluva 19 Úvod 23. Kapitola 1: Co je JavaScript 29. Kapitola 2: JavaScript v jazyku HTML 41

Nástroj WebMaker TXV první vydání Únor 2009 změny vyhrazeny

Práce se soubory opakování

HTML - Úvod. Zpracoval: Petr Lasák

OBSAH. Předmluva 13 Poděkování Přehled dnešního vývoje webů Design pro minulost, přítomnost i budoucnost 33

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Formuláře. Internetové publikování. Formuláře - příklad

Javascript v Seznamu

Web Services na SOAP

PHP Best Practices. Please try to fit your code to 80 columns. That's decimal 80. A. Morton

Vývoj Internetových Aplikací

Greasemonkey. Uživatelské skriptování (nejen) ve Firefoxu

Část IV - Bezpečnost 21. Kapitola 19 Bezpečnostní model ASP.NET 23

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové technologie

Počítačová Podpora Studia. Přednáška 5 Úvod do html a některých souvisejících IT. Web jako platforma pro vývoj aplikací.

ZÁVĚREČNÁ STUDIJNÍ PRÁCE dokumentace

NSWI096 - INTERNET JavaScript

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ SPOLEČNOST DECADIC PROJEKT FRAMETRIX

KAPITOLA 3. Architektura aplikací na frameworku Rails. V této kapitole: modely, pohledy, řadiče.

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace

Tvorba jednoduchých WWW stránek. VŠB - Technická univerzita Ostrava Katedra informatiky

Aktualizační systém Progres

Moderní techniky vývoje webových aplikací

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové technologie

Stručný obsah. Část I Úvod. Část II Komponenty

KIV/PIA 2012 Ing. Jan Tichava

3 MOŽNÉ PŘÍSTUPY K TVORBĚ APLIKACÍ NAD SVG DOKUMENTY

NSWI142 Webové aplikace Zkouškový test

Mapy.cz vs. amapy.cz

Nástroje a frameworky pro automatizovaný vývoj. Jaroslav Žáček jaroslav.zacek@osu.cz

Úvod do CSS. Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm. Modernizace výuky s využitím ICT, CZ.1.07/1.5.00/34.

TNPW1 Cvičení

Obsah. Úvod 11. Moodle 11 Zaměření vzorového e-learningového kurzu 12 Komu je kniha určena 13 Struktura knihy 14 Opravy a návrhy 15 Poděkování 15

Maturitní témata z předmětu PROGRAMOVÉ VYBAVENÍ pro šk. rok 2012/2013

Mendlova zemědělská a lesnická univerzita. Ajax komunikátor

Obsah. SEZNÁMENÍ S HRAMI V HTML Nové funkce HTML Nové funkce CSS

Tvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování

Maturitní témata Školní rok: 2015/2016

Nové přístupy tvorby web site. Doc. Ing. Zdeněk Havlíček, CSc. KIT PEF CZU - 13/11/2001

Grafické rozhraní pro práci s formuláři přes internet Graphic interface for working with forms placed on Internet. Bc.

Dokumentaci k semestrální úloze z předmětu Internet a WWW (X36WWW)

Skriptování na straně serveru a klienta

Pohled pod pokličku spíš než na UI Využití jako platformy pro vývoj aplikací PV219 Jakub Kolář FI MU

Ajax - úvod. Klíčové pojmy: Ajax, skriptování na straně klienta a serveru, objekt XMLHttpRequest, DOM model.

Richtext editory. Filip Dvořák

DODATEČNÉ INFORMACE Č. 1 K ZADÁVACÍM PODMÍNKÁM PŘESHRANIČNÍ INFORMAČNÍ SYSTÉM PRO PŘEDCHÁZENÍ A ŘEŠENÍ POVODNÍ A DALŠÍCH KRIZOVÝCH SITUACÍ

PODPORA PRÁCE S FORMULÁŘI VE WEBOVÉM PROHLÍŽEČI SUPPORT FOR FORM FILLING IN WEB BROWSER

Úvod do tvorby internetových aplikací

Stejná stránka se v různých prohlížečích může zobrazit odlišně.

Obsah. Stručná historie World Wide Webu 7

Snadný vývoj webových aplikací s Nette. Lukáš Jelínek

Microsoft Office 2003 Souhrnný technický dokument white paper

Část 1. Úvod. 1.1 Technické pozadí HTML a web HTML a XHTML Myšlenka CSS Další technologie 48

PROJEKT ININ, 1 ČÁST 1 ORACLE APEX. Martin Šimeček (kruh 258), prosinec 08

Aleš Rybák, Jiří Kadlec. Pluginy budoucnosti

Nový Node Monitor. 13. prosince Lukáš Turek Praha12.Net

Převod LN aplikace do xpages

Značkovací jazyky a spol. HTML/XHTML XML JSON YAML Markdown, Texy!

Proč Angular JS framework?

MVVM pro desktop i web

Vývojařská Plzeň AngularJS

Obsah. O autorech 9 Earle Castledine 9 Myles Eftos 9 Max Wheeler 9 Odborný korektor 10. Předmluva 11 Komu je kniha určena 12 Co se v knize dočtete 12

CSS Stylování stránek. Zpracoval: Petr Lasák

Obsah. Úvod 11 O autorovi 11 Koncept knihy 11 Zpětná vazba od čtenářů 12 Zdrojové kódy ke knize 12 Errata 12 ČÁST I VÝVOJ MOBILNÍ APLIKACE

Úřad vlády České republiky Odbor pro sociální začleňování (Agentura)

MANUÁL K OBSLUZE REDAKČNÍHO SYSTÉMU / wordpress

Internetové publikování

Uživatelská příručka 6.A6. (obr.1.)

TVORBA WEBOVÝCH STRÁNEK

Zpřístupnění korporátního webu

Steve Suehring. JavaScript Krok za krokem

NÁVRH A REALIZACE WWW PREZENTACE ČKR

Úvod do aplikací internetu a přehled možností při tvorbě webu

1. Struktura stránky, zásady při psaní kódu, MVC pattern. Web pro kodéry (Petr Kosnar, ČVUT, FJFI, KFE, PINF 2008)

Tvorba přizpůsobivých webových rozhraní

Zranitelnosti webových aplikací. Vlastimil Pečínka, Seznam.cz Roman Kümmel, Soom.cz

České Budějovice, Emy Destinové 395

Kolaborativní aplikace

Inovace firemnı webove aplikace SPEA-SYSTE M

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ NÁVRH INTERNETOVÝCH STRÁNEK BAKALÁŘSKÁ PRÁCE FAKULTA PODNIKATELSKÁ ÚSTAV INFORMATIKY BRNO UNIVERSITY OF TECHNOLOGY

NÁVRH INTERNETOVÝCH STRÁNEK PROPOSAL OF WEBSITE

Příloha č P10

ANOTACE nově vytvořených/inovovaných materiálů

HTML 5 Historie HTML5 Co je HTML5 Přehled novinek

Transkript:

Obsah Část 1 Moderní JavaScript Kapitola 1 Moderní programování v JavaScriptuh.................... 13 Objektově orientovaný JavaScript................................13 Testování zdrojového kódu...................................... 15 Rozčleňování do balíků pro distribuci............................ 15 Nevtíravé skriptování DOM...................................... 17 Document Object Model...................................... 17 Události...................................................... 18 JavaScript a CSS............................................... 19 Ajax.............................................................20 Podpora ze strany prohlížečů....................................22 Shrnutí..........................................................24 Část 2 Profesionální vývoj v JavaScriptu Kapitola 2 Objektově orientovaný JavaScript........................ 29 Vlastnosti jazyka.................................................29 Reference..................................................... 29 Přetěžování funkcí a kontrola typů............................. 31 Scope rozsah působnosti proměnné......................... 35 Uzávěry...................................................... 36 Kontext....................................................... 39 Základy objektově orientovaného kódu..........................41 Objekty....................................................... 41 Vytvoření objektu............................................. 42 Veřejné metody........................................... 43 Soukromé metody......................................... 44 Privilegované metody..................................... 45 Statické metody........................................... 46 Shrnutí.......................................................... 47

4 Obsah Kapitola 3 Tvorba znovupoužitelného kódu.......................... 49 Standardizovaný objektově orientovaný kód......................49 Prototypová dědičnost........................................ 49 Klasická dědičnost............................................ 51 Knihovna Base................................................ 54 Knihovna Prototype........................................... 55 Rozdělení do balíků.............................................59 Prostory jmen................................................. 59 Dojo...................................................... 59 YUI....................................................... 60 Úklid našeho kódu............................................ 61 Deklarace proměnných.................................... 62!= a == versus!== a ===........................................ 62 Bloky a závorky........................................... 63 Středníky................................................. 63 Komprese.................................................... 64 JSMin..................................................... 64 Packer.................................................... 65 Distribuce.......................................................66 Shrnutí.......................................................... 67 Kapitola 4 Nástroje pro ladění a testování........................... 69 Ladění..........................................................69 Chybová konzola.............................................. 69 Internet Explorer.......................................... 70 Firefox.................................................... 70 Safari..................................................... 72 Opera.................................................... 73 Inspektoři DOM.............................................. 74 Inspektor DOM ve Firefoxu.................................74 Web Inspektor v Safari..................................... 75 View Source Chart..........................................76 FireBug....................................................... 77 Venkman..................................................... 77 Testování........................................................78 JSUnit........................................................ 79 J3Unit........................................................ 81 Test.Simple................................................... 82 Shrnutí..........................................................83

Obsah 5 Část 3 Nevtíravý JavaScript Kapitola 5 Objektový model dokumentů............................ 87 Úvod do DOM..................................................87 Navigování v DOM..............................................88 Zpracování bílých znaků v DOM............................... 90 Jednoduchá navigace v DOM.................................. 92 Svázání s elementy HTML..................................... 94 Standardní metody DOM...................................... 95 Čekání na načtení DOM.........................................96 Čekání na načtení stránky..................................... 97 Čekání na načtení větší části DOM............................. 97 Zjištění okamžiku načtení DOM............................... 98 Hledání elementů v dokumentu HTML..........................100 Hledání elementů podle názvu třídy.......................... 100 Hledání elementů podle selektoru CSS........................ 101 cssquery................................................ 102 jquery................................................... 103 XPath........................................................ 104 Získání obsahu elementu.......................................105 Získání textu z elementu..................................... 105 Získání HTML z elementu.................................... 107 Práce s parametry elementů....................................108 Získání a nastavení hodnoty parametru....................... 108 Úprava DOM................................................... 111 Tvorba uzlů pomocí DOM.................................... 111 Vkládání do DOM............................................ 112 Vkládání HTML do DOM..................................... 114 Odstraňování uzlů z DOM.................................... 116 Shrnutí.........................................................118 Kapitola 6 Události............................................... 119 Úvod do událostí JavaScriptu................................... 119 Asynchronní události versus vlákna........................... 119 Vlákna v JavaScriptu...................................... 120 Asynchronní callback funkce............................. 121 Fáze událostí................................................. 122

6 Obsah Běžné vlastnosti události.......................................124 Objekt události.............................................. 125 Klíčové slovo this............................................ 125 Zrušení bublání události..................................... 126 Přepsání standardní akce prohlížeče.......................... 128 Vázání monitorů událostí.......................................130 Tradiční vázání............................................... 130 Výhody tradičního vázání..................................131 Nevýhody tradičního vázání...............................131 Vázání DOM: W3C........................................... 132 Výhody vázání podle W3C................................ 133 Nevýhoda vázání podle W3C............................. 133 Vázání DOM: IE.............................................. 133 Výhoda vázání podle IE.................................. 134 Nevýhody vázání podle IE................................ 134 addevent a removeevent..................................... 134 Výhody funkce addevent..................................... 137 Nevýhoda funkce addevent............................... 137 Typy událostí...................................................137 Nevtíravé skriptování DOM.....................................138 Předpoklad, že JavaScript bude zakázán...................... 139 Ujištění se, že odkazy nezávisí na JavaScriptu................. 139 Sledování, kdy je zakázán CSS................................ 140 Dostupnost událostí.......................................... 141 Shrnutí.........................................................142 Kapitola 7 JavaScript a CSS........................................ 143 Přistupování k informaci o stylech..............................143 Dynamické elementy...........................................145 Pozice elementu............................................. 146 Zjištění pozice............................................151 Nastavení pozice..........................................154 Velikost elementu............................................ 155 Viditelnost elementu......................................... 157 Animace.......................................................159 Rozvinutí.................................................... 160 Roztmívání.................................................. 160 Prohlížeč....................................................... 161 Pozice ukazatele myši........................................ 161 Zobrazovací pole............................................ 163

Obsah 7 Velikost stránky.......................................... 163 Pozice rolovací lišty...................................... 163 Posun rolovací lišty....................................... 164 Velikost zobrazovacího pole.............................. 164 Táhni a pusť ( drag&drop ).....................................165 Knihovny......................................................171 moo.fx a jquery............................................. 171 Scriptaculous................................................ 172 Přeuspořádání pomocí techniky táhni a pusť (tzv. sortables )................................... 172 Šoupátko ( slider )....................................... 173 Shrnutí.........................................................175 Kapitola 8 Vylepšování formulářů.................................. 177 Validace formulářů.............................................177 Povinná pole................................................. 181 Kontrola podle shody se vzorem............................. 182 E-mail................................................... 182 URL..................................................... 183 Telefonní číslo........................................... 184 Datum................................................... 184 Sada pravidel................................................ 185 Zobrazování chybových zpráv..................................187 Validace..................................................... 187 Kdy validovat................................................ 191 Validace při potvrzení formuláře...........................191 Validace při změně pole...................................191 Validace po načtení stránky............................... 192 Zlepšování použitelnosti........................................193 Vznášející se popisky........................................ 193 Označení povinných polí..................................... 196 Shrnutí.........................................................197 Kapitola 9 Vytváření galerie obrázků............................... 199 Ukázkové galerie...............................................199 Lightbox.....................................................200 ThickBox.................................................... 201 Vývoj galerie...................................................203 Nenápadné načítání..........................................206 Průhledná překryvná plocha.................................208

8 Obsah Umístěný obalový prvek..................................... 211 Navigace..................................................... 214 Prezentace................................................... 216 Shrnutí.........................................................219 Část 4 Ajax Kapitola 10 Úvod do Ajaxu.......................................... 223 Použití Ajaxu...................................................223 Požadavky HTTP............................................. 224 Navázání spojení......................................... 224 Serializace dat............................................ 225 Poslání požadavku GET.................................. 228 Poslání požadavku POST................................. 228 Odpověď HTTP..............................................229 Ošetření chyb............................................ 230 Kontrola vypršení časového limitu........................ 232 Zpracování dat z odpovědi.....................................233 Kompletní balíček pro AJAX....................................234 Příklady užívání různých druhů dat.............................235 Kanál RSS založený na XML..................................235 Vkládání HTML.............................................. 237 JSON a JavaScript: Vzdálené spouštění........................238 Shrnutí.........................................................238 Kapitola 11 Blogy vylepšené Ajaxem................................ 241 Nekonečný blog................................................241 Šablona blogu............................................... 243 Zdroj dat..................................................... 245 Detekce událostí............................................. 246 Požadavek................................................... 247 Výsledek..................................................... 247 Živé blogování.................................................251 Shrnutí.........................................................253

Obsah 9 Kapitola 12 Vyhledávání s automatickým dokončováním............. 255 Příklady vyhledávání s dokončováním...........................255 Výstavba stránky...............................................258 Sledování vstupu z klávesnice...................................259 Přijímání výsledků..............................................263 Ovládání menu s výsledky......................................266 Navigace pomocí klávesnice..................................266 Navigace pomocí myši....................................... 267 Konečný výsledek..............................................267 Shrnutí.........................................................272 Kapitola 13 Ajax a Wiki............................................. 275 Co je Wiki?.....................................................275 Komunikace s databází.........................................276 Ajaxový požadavek.............................................277 Kód na straně serveru..........................................278 Zpracování požadavku.......................................278 Spouštění a formátování SQL.................................280 Zpracování odpovědi JSON.....................................282 Speciální případová studie: javascriptový blog.................. 284 Kód aplikace...................................................285 Hlavní javascriptový kód.....................................286 Javascriptová knihovna SQL..................................289 Serverový kód v jazyce Ruby.................................. 291 Shrnutí.........................................................292 Část 5 Budoucnost JavaScriptu Kapitola 14 Kam se ubírá vývoj JavaScriptu?......................... 297 JavaScript 1.6 a 1.7..............................................297 JavaScript 1.6...................................................298 ECMAScript pro XML (E4X)..................................298 Novinky pro práci s poli......................................299 JavaScript 1.7....................................................300 Generátor polí............................................... 301

10 Obsah Platnost jmen s let.......................................... 301 Destrukturování..............................................302 Web Applications 1.0...........................................303 Hodiny....................................................... 304 Jednoduchá simulace planet....................................308 Comet.........................................................311 Shrnutí......................................................... 314 Část 6 Přílohy Příloha A Reference DOM......................................... 317 Zdroje......................................................... 317 Terminologie................................................... 317 Globální proměnné............................................ 319 Navigace v DOM...............................................320 Informace o uzlu...............................................324 Atributy........................................................326 Úpravy DOM...................................................328 Příloha B Referenční příručka událostí............................ 333 Zdroje.........................................................333 Terminologie...................................................333 Objekt Event...................................................334 Události stránky................................................341 Události uživatelského rozhraní................................ 344 Události myši.................................................. 344 Události klávesnice.............................................347 Události formuláře.............................................348 Příloha C Prohlížeče............................................. 351 Rejstřík................................................ 355