Lukáš Masopust 2006
Dynamická stránka je stránka, jejíž zdrojový kód obsahuje skript, schopný bezprostředně obsloužit událost vyvolanou činností návštěvníka stránky. Je to, tedy stránka se skriptem, který se spouští u uživatele. Tuto definici splňují i pseudoprvky a pseudotřídy U AJAXu je to není zcela zřejmé
1994 – LiveScript – syntax jazyka byla inspirována C++ a Javou 1995 – Brendan Eich, inženýr firmy Netscape, představil JavaScript – změna názvu byla schválena firmou Sun 1996 – Microsoft představil Jscript Započat vývoj ECMAScript standardu – snaha o sjednocení JavaScriptu a Jscriptu Představen VBScript
1997 –European Computer Manufacturers Association (ECMA) vydala první verzi ECMAScriptu (ECMA-262, ISO-16262) 1998 – Document Object Model (HTML) Level 1 1999 – ECMAScript 3. vydání Microsoft ECMAScript standart implementuje ve verzi 5.0 2000 – JavaScript 1.5 2004 – XMLHttpRequest standartizován W3C 2005 – JavaScript 1.6 2006 – JavaScript 1.7
VerzePopis JavaScript 1.0 P ůvodní verze jazyka. Bylo v ní mnoho chyb a nyní je již zastaralá. Implementována v Netscape 2. JavaScript 1.1 Uvedla skute čný objekt Array; nejvážnější chyby byly odstraněny. Implementována v Netscape 3. JavaScript 1.2 Zavedla p říkaz switch, regulární výrazy a řadu dalších prvků. Téměř odpovídá standardu ECMA 1. Implementována v Netscape 4. JavaScript 1.3 Opraveny nekompatibility z JavaScriptu 1.2. Kompatibiln í s ECMA verze 1. Implemento v ána v Netscape 4.5. JavaScript 1.4 Implementov ána pouze v serverových produktech společnosti Netscape. JavaScript 1.5 Zav ádí zpracování výjimek. Odpovídá standardu ECMA verze 3. Implementována v pro hl ížečích Mozilla a Netscape 6.
VerzePopis ECMA 1 Standardizuje základní prvky JavaScriptu 1.1 a přidává nov é prvky. Kompatibilními implementacemi jsou JavaScript 1.3 a JScript 3.0. ECMA 2Organiza ční verze obsahující vyjasnění, nikoli však nové prvky. ECMA 3 Standardizuje příkaz switch, regulární výrazy a zpracování výjimek. Kompatibilními implementacemi jsou JavaScript 1.5 a JScript 5.5. JavaScript 1.6 Přídány nové funkce pro práci s polem JavaScript 1.7 Přídány nové funkce – např. generování Fibonacciho čísel
Version of JScriptDateIntroduced withApprox. JavaScript 1.0Aug 1996IE Jan 1997IIS Oct 1997IE VS Mar 1999IE IE Jul 2000IE Oct 2001IE NET Microsoft.NET Framework 1.0 ?
Skripty se spouštějí na straně klienta, proto jazyk neobsahuje funkce pro práci se soubory Existuje i serverová verze – spuštění v shell Objektově založený jazyk Umí obsloužit události přidružené HTML prvkům Syntax inspirována C++
1. … kód … Vkládá se do hlavičky HTML dokumentu Prohlížeč nepodporuje či má zakázané spouštění JavaScriptu
ParametrPopis Charset Tento atribut udává, která sada znaků se má pro skript použít. Standardní nastavení je ISO Defer Tento atribut stojí samostatně a nepotřebuje tedy přiřazovat žádnou hodnotu. Jestliže je použit, sdělujeme prohlížeči, že skript nemá výstup na obrazovku. Event Označuje událost, pro kterou byl skript napsán. For Určuje, který prvek je na tento skript navázán. Language Jak jsme si již řekli, popisuje tento atribut, který jazyk bude pro skript použit. Src Sem se zapíše název externího zdroje dat. To má smysl zvláště tehdy, je-li pro mnoho souborů HTML používán stejný skript. Type Tento parametr udává typ MIME zdrojového textu skriptu.
<textarea id="popis" onclick="document.getElementById('popis').value=’ ’ ">Zde vložte popis k…
function process() { var string; string = " Black Orange Pink "; myDiv = document.getElementById("myDivElement"); myDiv.innerHTML = string; }
Základ tvoří objekt XMLHttpRequest Vystavěn na současných technologií Umožňuje přiblížit web „klasickým“ aplikacím Šetří datové přenosy Urychluje uživateli práci Odděluje obsah od způsobu propagace Nemění URL v adresném řádku prohlížeče Znemožňuje použití tlačítka zpět v prohlížeči Znemožňuje záložkování
oUl = document.createElement("ul") oLiBlack = document.createElement("li"); oBlack = document.createTextNode("Black"); oLiBlack.appendChild(oBlack); oUl.appendChild(oLiBlack); myDiv = document.getElementById("myDivElement"); myDiv.appendChild(oUl); DIV UL LI Black
onAbort – když uživatel přeruší akci onBlur – když prvek ztratí focus onChange – když ztratí fokus objekt Select, Text nebo Textarea a když byla změněna jeho data onClick – když bylo klepnuto na prvek onDblClick – když bylo poklepáno na prvek onFocus – když některý prvek dostal fokus
onDragDrop – když uživatel přetáhne objekt do okna prohlížeče onKeyDown – když byla stlačena klávesa dolů onKeyPress – když uživatel klávesu stiskne nebo drží stisknutou onKeyUP – když je klávesa opět uvolněna onMouseDown – když uživatel stiskne tlačítko myši onMouseMove – když uživatel pohne myší onMouseOut – když myš opustí oblast (obrázek nebo odkaz) onMouseOver – když kurzor myši je nad objektem onMouseUp – když uživatel opět uvolní tlačítko myši
onMove – když uživatel nebo skript pohne objektem (oknem) onReset – když uživatel resetuje formulář onResize – když uživatel nebo skript změní velikost okna (rámce) onSelect – když uživatel označí text (např. v textarea) onSubmit – když uživatel odešle formulář onLoad – když bylo dokončeno natahování dokumentu onUload – když uživatel opustí dokument onError – když natažení dokumentu nebo obrázku způsobí chybu
etscape.com/central/javascript/
Prof. Zdeněk Kotek, zakladatel katedry počítačů FEL