SlideShare uma empresa Scribd logo
1 de 38
Tvorba www stránek
JavaScript
JavaScript Výstup (zobrazení v
prohlížeči)
• window.alert().
• document.write().
• innerHTML.
• console.log()
innerHTML
window.alert().
document.write()
console.log()
Aktivuje se v prostředí (Chrome, IE, Firefox)
F12, vyber "Console" v debugger menu.
<script>
console.log(5 + 6);
</script>
Syntaxe
• Jednotlivé části jsou odděleny středníky
• var x = 3;
var y = 7;
var z = x + y;
• Číslice se mohou psát s desetinou čárkou i
bez desetinné čárky
Může být 50 i 50.55
Uvozovky
Mohou se psát uvozovky jak jednoduché,
tak dvojité.
Proměnná
Proměnná je definována výrazem var x a
její hodnota je přiřazena rovnítkem a
má v příkladu hodnotu 8.
var x;
x = 8;
Proměnná II.
var cena1 = 5;
var cena2 = 6;
var celkeml = cena1 + cena2;
Vytváření proměnné
var jmenoAuta;
Operátory
=
+
-
*
/
%
++
--
Komentáře
var x = 8;   //  zde můžu psát komentář
// var x = 9;   to je špatný zápis komentáře
/*
document.getElementById("odstavec").innerHTML = "My First 
Page";
document.getElementById("footer").innerHTML = "My first 
paragraph.";
*/
Case Sensitive
Camel Case
CitliveNaVelikostPismen
Prohlášení
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = "Toto se objeví v prohlížeči
na místě odstavce s názvem demo.";
</script>
Najdi element, který se jmenuje demo a vypiš v HTML text – Toto se objeví …
Dokument je název pro webovou stránku.
Typy dat
  var length = 16;                            // Number
var lastName = „Novák";                    // String
var cars = ["Škoda", "Volvo", "BMW"];         // Array
var x = {firstName:"John", lastName:"Doe"};  // Object
Funkce
function myFunction(a, b) {
    return a * b; // Funkce vrátí výsledek 
}
<p id="demo"></p>
<script>
function myFunction(a, b) {
return a * b;
}
document.getElementById("demo").innerHTML = myFunction(4, 3);
</script>
Výledek v prohlížeči je 12
Objekty
Objekty mají název a hodnotu
<p id="demo"></p>
<script>
var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
document.getElementById("demo").innerHTML =
person.firstName + " is " + person.age + " years old.";
</script>
Události
<button onclick='getElementById("de
mo").innerHTML=Date()'>Kolik je 
hodin?</button>
Při klinuti na tlačítko se zobrazí 
aktuální datum a čas.
Běžné typy události
Událost Popis
onchange událost při změně elementu (např.) formulář
onclick Změní se po kliknutí
onmouseover Změní se při přejetí kurzoru pře element
onmouseout Změní se když kurzor opustí element
onkeydown Stlačení tlačítka na klávesnici
onload Prohlížeč ukončil načítání stránky
Objekt this
<p onclick="this.style.color = 'red'">text přebarvený
kliknutím</p>Po dvojkliku na tento odstavec se změní barva
pozadí odstavce.
<p ondblclick="this.style.backgroundColor = 'yellow'">změna pozadí
dvojklikem</p>Po přejetí tohoto slova se to slovo ztuční.
<span onmouseover="this.style.fontWeight= 'bold'">slovo</span> ztučnělé
přejetím
String
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;
txt.length mi spočítá počet písmen
<p id="demo"></p>
<script>
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
document.getElementById("demo").innerHTML = txt.length;
</script>
Array
<p id="demo"></p>
<script>
var cars = new Array("Saab", "Volvo", "BMW");
document.getElementById("demo").innerHTML = cars[2];
</script>
Pozor, počítá se vždy od 0.
Poznámka: Od nuly jdou i měsíce!
Boolean() Function
• YES / NO
• ON / OFF
• TRUE / FALSE
Logický datový typ
Operátor
<button onclick="myFunction()">Můžu volit?</button>
<p id="demo"></p>
<script>
function myFunction() {
var age, voteable;
age = document.getElementById("age").value;
voteable = (age < 18) ? "Příliš mladý":"Jsi dost starý";
document.getElementById("demo").innerHTML = voteable + " můžeš jít k
volbám.";
}
</script>
If...Else
Jestliže se splní podmínka, tak se stane toto.
<button onclick="myFunction()">klikni zde</button>
<p id="demo"></p>
<script>
function myFunction() {
var hour = new Date().getHours();
var greeting;
if (hour < 18) {
greeting = "dobrý den";
} else {
greeting = "dobrý večer";
}
document.getElementById("demo").innerHTML = greeting;
}
</script>
Loop
Loop je smyčka. Stále spouští stejný kód znovu
a znovu pokaždé s jinou hodnotou.
Místo tohoto zápisu
text += cars[0] + "<br>";
text += cars[1] + "<br>";
text += cars[2] + "<br>";
text += cars[3] + "<br>";
text += cars[4] + "<br>";
text += cars[5] + "<br>";
Můžete napsat:
for (i = 0; i < cars.length; i++) {
text += cars[i] + "<br>";}
Do / while
• do {
    text += "Číslo je " + i;
    i++;
}
while (i < 10);
Uvedený příklad používá do / while. Smyčka bude vždy provedena alespoň jednou, a to i v
případě, že je podmínka nepravdivá, protože kód je uskutečněn před tím, než se testuje stav.
DOM
Document Object Model
DOM
JavaScript může:
• změnit všechny prvky HTML ve stránce
• změnit všechny atributy HTML ve stránce
• změnit všechny styly CSS na stránce
• odstranit existující HTML elementy a atributy
• přidávat nové HTML elementy a atributy
• reagovat na všechny stávající události HTML ve
stránce
• vytvářet nové události v HTML stránky
document.getElementById("demo").innerHT
ML = "ukaž se!";
Nalezení elementů
document.getElementById()
Najdi element podle ID
document.getElementsByTagName()
Najdi element podle jména
namedocument.getElementsByClassName()
Najdi element podle třídy
Změna HTML elementů
element.innerHTML=
Změna HTML zápisu elementu
element.attribute=
Změna atributu HTML elementu
element.setAttribute(atribut,hodnota)
Změna atributu HTML elementu
element.style.property=
Změna stylu HTML elementu
Přidání a vymazání elementů
document.createElement()
document.removeChild()
document.appendChild()
document.replaceChild()
document.write(text)
Nalezení objektů
document.anchors
document.applets
document.baseURI
document.body
document.cookie
document.doctype
document.documentElement
document.documentMode
document.documentURI
document.domain
document.domConfig
document.embeds
document.forms
document.head
document.images
document.implementation
document.inputEncoding
document.lastModified
document.links
document.readyState
document.referrer
document.scripts
document.strictErrorChecking
document.title
document.URL
Změna CSS
<h1 id="id1">Nadpis</h1>
<button type="button" 
onclick="document.getElementById('
id1').style.color = 'red'">
Změn mě!</button>
Nalezení CSS selektrou
var x = document.querySelectorAll("p.intro");

Mais conteúdo relacionado

Semelhante a JavaScript

JavaScript v GTM - Measure Camp Brno 2017
JavaScript v GTM - Measure Camp Brno 2017JavaScript v GTM - Measure Camp Brno 2017
JavaScript v GTM - Measure Camp Brno 2017Michal Blažek
 
Google Tag Manager pro vývojáře
Google Tag Manager pro vývojářeGoogle Tag Manager pro vývojáře
Google Tag Manager pro vývojářeMichal Blažek
 
Martin Zeman - Moje první aplikace v Symfony 3 (4. sraz přátel Symfony v Praze)
Martin Zeman - Moje první aplikace v Symfony 3 (4. sraz přátel Symfony v Praze)Martin Zeman - Moje první aplikace v Symfony 3 (4. sraz přátel Symfony v Praze)
Martin Zeman - Moje první aplikace v Symfony 3 (4. sraz přátel Symfony v Praze)Péhápkaři
 
Nadupaný kontejner pro analytiku v B2B (Michal Blažek)
Nadupaný kontejner pro analytiku v B2B (Michal Blažek)Nadupaný kontejner pro analytiku v B2B (Michal Blažek)
Nadupaný kontejner pro analytiku v B2B (Michal Blažek)Taste Medio
 
Nadupaný kontejner pro analytiku v B2B
Nadupaný kontejner pro analytiku v B2BNadupaný kontejner pro analytiku v B2B
Nadupaný kontejner pro analytiku v B2BMichal Blažek
 
Rozšiřujeme jQuery aneb proč si nenapsat plugin?
Rozšiřujeme jQuery aneb proč si nenapsat plugin?Rozšiřujeme jQuery aneb proč si nenapsat plugin?
Rozšiřujeme jQuery aneb proč si nenapsat plugin?Bohdan Ganický
 
Petr Heinz - Čisté testy, dobré testy
Petr Heinz - Čisté testy, dobré testyPetr Heinz - Čisté testy, dobré testy
Petr Heinz - Čisté testy, dobré testyAnna Kovárová
 

Semelhante a JavaScript (9)

JavaScript v GTM - Measure Camp Brno 2017
JavaScript v GTM - Measure Camp Brno 2017JavaScript v GTM - Measure Camp Brno 2017
JavaScript v GTM - Measure Camp Brno 2017
 
201502.ReinIT.Dev
201502.ReinIT.Dev201502.ReinIT.Dev
201502.ReinIT.Dev
 
Google Tag Manager pro vývojáře
Google Tag Manager pro vývojářeGoogle Tag Manager pro vývojáře
Google Tag Manager pro vývojáře
 
Martin Zeman - Moje první aplikace v Symfony 3 (4. sraz přátel Symfony v Praze)
Martin Zeman - Moje první aplikace v Symfony 3 (4. sraz přátel Symfony v Praze)Martin Zeman - Moje první aplikace v Symfony 3 (4. sraz přátel Symfony v Praze)
Martin Zeman - Moje první aplikace v Symfony 3 (4. sraz přátel Symfony v Praze)
 
Nadupaný kontejner pro analytiku v B2B (Michal Blažek)
Nadupaný kontejner pro analytiku v B2B (Michal Blažek)Nadupaný kontejner pro analytiku v B2B (Michal Blažek)
Nadupaný kontejner pro analytiku v B2B (Michal Blažek)
 
Nadupaný kontejner pro analytiku v B2B
Nadupaný kontejner pro analytiku v B2BNadupaný kontejner pro analytiku v B2B
Nadupaný kontejner pro analytiku v B2B
 
Clean code
Clean codeClean code
Clean code
 
Rozšiřujeme jQuery aneb proč si nenapsat plugin?
Rozšiřujeme jQuery aneb proč si nenapsat plugin?Rozšiřujeme jQuery aneb proč si nenapsat plugin?
Rozšiřujeme jQuery aneb proč si nenapsat plugin?
 
Petr Heinz - Čisté testy, dobré testy
Petr Heinz - Čisté testy, dobré testyPetr Heinz - Čisté testy, dobré testy
Petr Heinz - Čisté testy, dobré testy
 

Último

Project Restart 2024: Jiří Langr - Mytologie projektů
Project Restart 2024: Jiří Langr - Mytologie projektůProject Restart 2024: Jiří Langr - Mytologie projektů
Project Restart 2024: Jiří Langr - Mytologie projektůTaste
 
Project Restart 2024: Karel Smutný - Specializace patří do 19. století
Project Restart 2024: Karel Smutný - Specializace patří do 19. stoletíProject Restart 2024: Karel Smutný - Specializace patří do 19. století
Project Restart 2024: Karel Smutný - Specializace patří do 19. stoletíTaste
 
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...Taste
 
Project Restart 2024: Lenka Auerová - Budování holistické organizace
Project Restart 2024: Lenka Auerová - Budování holistické organizaceProject Restart 2024: Lenka Auerová - Budování holistické organizace
Project Restart 2024: Lenka Auerová - Budování holistické organizaceTaste
 
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...Taste
 
ZWT - co byste měli vědět - studijní program KIZI VŠE
ZWT - co byste měli vědět - studijní program KIZI VŠEZWT - co byste měli vědět - studijní program KIZI VŠE
ZWT - co byste měli vědět - studijní program KIZI VŠEStanislav Vojíř
 
Project Restart 2024: Pavel Minář - Procesy pro lepší projekty
Project Restart 2024: Pavel Minář - Procesy pro lepší projektyProject Restart 2024: Pavel Minář - Procesy pro lepší projekty
Project Restart 2024: Pavel Minář - Procesy pro lepší projektyTaste
 
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?Taste
 
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...Taste
 
Vybrané předměty vyučované KIZI pro studenty informatických oborů FIS VŠE
Vybrané předměty vyučované KIZI pro studenty informatických oborů FIS VŠEVybrané předměty vyučované KIZI pro studenty informatických oborů FIS VŠE
Vybrané předměty vyučované KIZI pro studenty informatických oborů FIS VŠEStanislav Vojíř
 

Último (10)

Project Restart 2024: Jiří Langr - Mytologie projektů
Project Restart 2024: Jiří Langr - Mytologie projektůProject Restart 2024: Jiří Langr - Mytologie projektů
Project Restart 2024: Jiří Langr - Mytologie projektů
 
Project Restart 2024: Karel Smutný - Specializace patří do 19. století
Project Restart 2024: Karel Smutný - Specializace patří do 19. stoletíProject Restart 2024: Karel Smutný - Specializace patří do 19. století
Project Restart 2024: Karel Smutný - Specializace patří do 19. století
 
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...
Project Restart 2024: Martin Vasquez - Inteligence je schopnost reagovat na z...
 
Project Restart 2024: Lenka Auerová - Budování holistické organizace
Project Restart 2024: Lenka Auerová - Budování holistické organizaceProject Restart 2024: Lenka Auerová - Budování holistické organizace
Project Restart 2024: Lenka Auerová - Budování holistické organizace
 
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...
E-mail Date #2: Jan Krčmář - Retence a RFM: jak pomocí e-mailingu navýšit hod...
 
ZWT - co byste měli vědět - studijní program KIZI VŠE
ZWT - co byste měli vědět - studijní program KIZI VŠEZWT - co byste měli vědět - studijní program KIZI VŠE
ZWT - co byste měli vědět - studijní program KIZI VŠE
 
Project Restart 2024: Pavel Minář - Procesy pro lepší projekty
Project Restart 2024: Pavel Minář - Procesy pro lepší projektyProject Restart 2024: Pavel Minář - Procesy pro lepší projekty
Project Restart 2024: Pavel Minář - Procesy pro lepší projekty
 
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?
Project Restart 2024: Jan Řezáč - Nahradí AI projektové manažery?
 
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...
Project Restart 2024: Hana Březinová - Psychologické tipy pro práci s lidmi n...
 
Vybrané předměty vyučované KIZI pro studenty informatických oborů FIS VŠE
Vybrané předměty vyučované KIZI pro studenty informatických oborů FIS VŠEVybrané předměty vyučované KIZI pro studenty informatických oborů FIS VŠE
Vybrané předměty vyučované KIZI pro studenty informatických oborů FIS VŠE
 

JavaScript