NSWI096 - INTERNET JavaScript

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

JavaScript 101. "Trocha života do statických stránek"

Java a XML. 10/26/09 1/7 Java a XML

Formuláře. Internetové publikování

PRG036 Technologie XML

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 14 VY 32 INOVACE

HTML - Úvod. Zpracoval: Petr Lasák

Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.

Objektové programování

Internet cvičení. ZS 2009/10, Cvičení 3., Tomáš Pop. DISTRIBUTED SYSTEMS RESEARCH GROUP

Programování v jazyce JavaScript

Programování v jazyce JavaScript

Inovace bakalářského studijního oboru Aplikovaná chemie

PRG036 Technologie XML

Tvorba klientských skriptů v jazyce Java Script

Obsah prezentace. Co je to XML? Vlastnosti. Validita

Software602 Form Designer

Rozhraní SAX, SAX vs. SAX2. Jaroslav Ciml

(X)HTML, CSS a jquery

+ knihovna funkcí usnadňujících práci v javascriptu

Skriptování na straně serveru a klienta

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

Programování v jazyce JavaScript

Javascript. Javascript - jazyk

Programování v jazyce JavaScript

Databázové aplikace pro internetové prostředí PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku

NA CO SI DÁT POZOR V JAVASCRIPTU? Angular.cz

Část 1 Moderní JavaScript

API pro práci s XML. Jirka Kosek. Poslední modifikace: $Date: 2014/12/17 17:15:28 $ Copyright Jiří Kosek

Po stisku Next se nám objeví seznam dostupných tříd (naše zkompilovaná třída User.KBI), viz následující obrázek.

NSWI142 Webové aplikace Zkouškový test

Formuláře. Aby nám mohli uživatelé něco hezného napsat třeba co si o nás myslí!

Programování v jazyce JavaScript

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

8 Třídy, objekty, metody, předávání argumentů metod

Podpora XML v.net. Podpora XML v.net. nezávislý publicista. Jirka Kosek.

První kapitola úvod do problematiky

Název Live prez Sear enta Maps

Programování v jazyce JavaScript

Rozhraní pro práci s XML dokumenty. Roman Malo

Tvorba WWW stránek. Mojmír Volf

Obsah přednášky. XML DOM SAX XPath XSL transformace 1/46

1 Webový server, instalace PHP a MySQL 13

Programování v C++ 3, 3. cvičení

Základy HTML, URL, HTTP, druhy skriptování, formuláře

Základy objektové orientace I. Únor 2010

Content Security Policy

Návrh a tvorba WWW stránek 1/8. Formuláře

MBI - technologická realizace modelu

UJO Framework. revoluční architektura beans. verze

Generické programování

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

Platforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13

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

Práce se soubory opakování

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Skripta ke školení. Autor: Tomáš Herout Telefon: (+420)

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

Ukazka knihy z internetoveho knihkupectvi

Syntaxe XML XML teorie a praxe značkovacích jazyků (4IZ238)

EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI

Úvod do tvorby internetových aplikací

Vývoj Internetových Aplikací

PB161 Programování v jazyce C++ Přednáška 7

PB161 Programování v jazyce C++ Přednáška 7

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í

Karel Bittner HUMUSOFT s.r.o. HUMUSOFT s.r.o.

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

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní

TNPW1 Cvičení aneta.bartuskova@uhk.cz

Definice třídy. úplná definice. public veřejná třída abstract nesmí být vytvářeny instance final nelze vytvářet potomky

Dědičnost (inheritance)

DSL manuál. Ing. Jan Hranáč. 27. října V této kapitole je stručný průvodce k tvorbě v systému DrdSim a (v

Objektově orientované programování

PREPROCESOR POKRAČOVÁNÍ

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Ú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.

Příkazové skripty Procedurální jazyky Lua a ostatní

IRAE 07/08 Přednáška č. 1

NSWI096 - INTERNET. CSS kaskádové styly. Mgr. Petr Lasák

<!DOCTYPE html> <html lang="cs"> <head> <meta charset="utf-8" /> <title>název stránky v titulkovém pruhu prohlížeče</title> </head>

Javascript v Seznamu

VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA

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

Obsah přednášky 9. Skrývání informací. Skrývání informací. Zapouzdření. Skrývání informací. Základy programování (IZAPR, IZKPR) Přednáška 9

1. Webový server, instalace PHP a MySQL 13

Software pro vzdálenou laboratoř

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika

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í.

AJAX. Dynamické změny obsahu stránek

Parsování HTML. Pro účely testování jsem vytvořil stránku parsovani.html. Zdrojový kód:

Klíčová slova: dynamické internetové stránky, HTML, CSS, PHP, SQL, MySQL,

Jazyk XSL XPath XPath XML. Jazyk XSL - rychlá transformace dokumentů. PhDr. Milan Novák, Ph.D. KIN PF JU České Budějovice. 9.

Principy XQuery. funkcionální jazyk vše je výraz, jehož vyhodnocením vznikne určitá hodnota základní typy stejné jako v XML Schema:

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

Na tomto místě bude oficiální zadání vaší práce

XML. Aleš Keprt

PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

Transkript:

NSWI096 - INTERNET JavaScript Mgr. Petr Lasák

JAVASCRIPT JAK SE DNES POUŽÍVÁ Skriptovací (interpretovaný) jazyk Umožňuje interaktivitu Použití: Dialogy Kontrola dat ve formulářích Změny v (X)HTML dokumentu Časované události Nestihneme probrat vše http://www.w3schools.com/js/

UMÍSTĚNÍ SKRIPTU V HLAVIČCE XHTML Definování funkcí mezi tagy <script> <script type="text/javascript"> function show_alert() { alert("toto je výstraha..."); } </script> Ty lze volat na události v kódu <input type="button" onclick="show_alert()" value="výstraha"/>

UMÍSTĚNÍ SKRIPTU V TĚLE XHTML Definování mezi tagy <script> Mohu definovat funkce a nebo přímo psát tělo <script type="text/javascript"> document.write("<h1>hello World!</h1>"); </script> Ale toto není validní XHTML Nelze mít <h1> tag mezi <script> tagy Řešení je dát to do komentářů <script type="text/javascript"> <!-- document.write("<h1>hello World!</h1>"); --> </script>

UMÍSTĚNÍ SKRIPTU V EXTERNÍM SOUBORU V hlavičce dokumentu <script type="text/javascript" src="script.js"/> Stejné efekty jako linkovaný CSS soubor Pokud mám vypnuté JS tag <noscript> <noscript> <h1>tak nic, když nemáte JavaScript</h1> </noscript>

REAKCE NA UDÁLOSTI ELEMENTŮ <input type="text" id="email" onchange="checkemail()"> Při změně položky formuláře <form method="post" action="xxx.htm" onsubmit="return checkform()"> Při odeslání. Pokud vrátíte false, formulář se neodešle onmouseover onmouseout <body onload=" "> Při nahrání dokumentu

ZAJÍMAVÉ FUNKCE A OBRATY document.getelementbyid('id') Vrátí element podle id timeout = settimeout('funkce', time) Spustí funkci funkce za time milisekund Třeba na zobrazení hodin history.back() Ekvivalent zpět v prohlížeči location.reload() this Ekvivalent obnovit v prohlížeči Odkaz na aktuální objekt (ten na kterém je skript spuštěn při události)

ZAJÍMAVÉ ODKAZY Tutorial javascriptu http://www.w3schools.com/js/ Greasemonkey scripty https://addons.mozilla.org/cs/firefox/addon/greasemonkey/ Firefox addon existují i porty do jiných browserů Validace javascriptu - neoficiální http://www.jslint.com/

DOM/SAX UNDER THE HOOD

SOUVISLOSTI SE STAVBOU XHTML - DOM Stromová struktura existují vazby <zprava> <adresa> <jmeno>jan Amos</jmeno> <ulice>severni 12</ulice> </adresa> <text>pozdrav z <it>rise divu</it>!</text> <priloha cesta="obr1.png"/> </zprava>

ZAJÍMAVÉ VLASTNOSTI UZLU Každá položka stromu je uzel Element Information Item Nejvyšší element je Document [children] (Případně prázdný) uspořádaný seznam dětských položek [attributes] (Případně prázdná) neuspořádaná množina atributů [parent] Document/Element Information Item v jehož vlastnosti [children] je obsažen Další položky viz http://www.w3.org/tr/xml-infoset/

MANIPULACE S TÍMTO STROMEM Pro zpracování se používá rozhraní DOM / SAX Každý browser musí zpracovávat příchozí text Pracují podle jednoho z těchto dvou přístupů Obsahují příslušný parser Parser = SW, který umí přes vhodné rozhraní poskytovat infoset dokumentu aplikaci

ROZHRANÍ SAX SAX = Simple API for XML Načtení části dokumentu = událost Můžeme definovat obsluhu Hlavní události: www.kosek.cz Atributy jsou součástí parametrů startelement()

ROZHRANÍ DOM DOM = Document Object Model Standard W3C - Verze: DOM1, DOM2 a DOM3 http://www.w3.org/dom/domtr Celý dokument je načten do paměti Stromová reprezentace Jednotlivé uzly stromu jsou reprezentovány objekty Metody objektů jsou dány specifikací DOM Potomci objektů jsou dány XML Infosetem

KOUZLA S DOM Dotazy na jednotlivé elementy XPATH Pomocí jednoduchých dotazů procházení struktury http://www.w3schools.com/xpath/ Změna struktury dokumentu DOM Kromě stavby, dokáže dom i měnit strukturu http://www.w3schools.com/jsref/default.asp Dodatečný dynamizace pomocí dotazů JQuery Lze posílat dodatečné dotazy, zabudované XPATH a DOM http://www.w3schools.com/jquery/default.asp

CHCETE VĚDĚT VÍCE? Technologie XML NPRG036 (LS) Irena Mlýnková, Martin Nečasky DOM - Oficiální stránky W3C http://www.w3.org/dom/ SAX Oficiální stránky tvůrce pro Javu http://www.megginson.com/downloads/sax/ http://www.saxproject.org/

JAVASCRIPT JAK TO BYLO DOOPRAVDY

ZNAKY JAZYKA C++ like syntaxe A z ní vyplývající konstrukce jako if, switch, operatory Komentáře /*. */ Beztypový jazyk definice přes VAR ALE TO NEZNAMENÁ ŽE SE NEPRACUJE S DAT. TYPY!!! Number, Text, Real, Boolean, Object Provede se jednoduchá konverze 5 + 2 Prototypový jazyk!!!

OBJEKTOVÝ PŘÍSTUP Definicí funkce se vytvoří její prototyp (definice) Každý prototyp je objekt a tak se s ní pracuje Každá proměnná uvnitř je private property Dají se uvnitř funkce definovat funkce -> metody Kód na úrovni funkce je vlastně konstruktor function MyClass() { } var _myproperty; /* private property */ _myproperty = null;

VYTVÁŘENÍ METOD ÚPRAVOU PROTOTYPŮ Prototypové jazyky umí anonymní funkce Metodou upravujeme prototyp funkce Pomocí přístupu na identifikator.prototype function MyClass() { var _myproperty = Ahoj ; MyClass.prototype.toString = function() { return this. _myproperty;} } Lze i pomocí funkce method( name, function() );

JINÉ ZAJIMAVOSTI Dají se definovat jmenné prostory namespaces Existuje jeden globalní namespace Definice stejná jako v C# včetně volání Dědičnost klasická Definování přes metody.inherits(classname); Lze i multiple inheritance, jelikož máme prototypy Dědičnost parazitická Privátní dědění od třídy v sobě

A JE TOHO MNOHEM VÍCE Douglas Crockford otec zakladatel www.crockford.com O Reilly Javascript: The Good Parts