JavaScript - Funkce
Funkce je kousek skriptu, který můžete opakovaně vyvolávat. Funkce šetří čas a námahu.
Deklarace funkce
Kromě předem nastavených funkcí JavaScriptu, si můžete deklarovat své vlastní.
function napis(){ document.write("ahoj"); }
Klíčové slovo function
deklaruje funkci (je povinný). Slovo napis
je název funkce (názvy pište bez diakritiky). ()
uvádějí, zda se jedná o funkci s parametrem (viz dále), nebo bez (prázdné závorky) parametru. Složené závorky {}
ohraničují tělo funkce.
Kdykoli zavoláte tuto funkci skript vypíše "ahoj". To je výhodné pokud chcete zapsat "ahoj" desetkrát po sobě (ještě výhodnější je, když chcete zapsat dlouhý text).
Vyvolání funkce
Nyní jsme deklarovali funkci, ale teď ji použijeme:
napis();
Zapíšeme pouze název funkce a závorky. Skript vypíše "ahoj".
Funkce bez argumentu
Je již zmíněná funkce napis(), která nemá uvnitř závorek žádný argument.
Funkce s argumentem
A co když chci někdy napsat 'ahoj', jindy 'dobrý den' a jindy něco úplně jiného? Použijeme funkci s argumentem.
function napis(jmeno){ document.write(jmeno); } napis('dobrý večer'); //napíše dobrý večer napis('ahoj'); //napíše ahoj
Deklarace je úplně stejná až na argument jmeno
. Ten deklaruje proměnnou jmeno
. Uvnitř funkce v metodě document.write()
jsme nepoužili uvozovky, protože jmeno
je proměnná. Potom jsme vyvolali funkci a jako její argument (hodnotu proměnné) jsme uvedli 'dobrý večer' a poté 'ahoj'. Ty byly přiřazeny k proměnné jmeno
a následně zapsány. Argument, jde-li o textový řetězec, musíme při vyvolání funkce uvádět v uvozovkách. Jde-li o číslo, uvozovky nepíšeme. Touto funkcí suplujeme metodu document.write()
.
Funkce vracející hodnotu
Můžete také deklarovat funkci, která vrací hodnotu a s ní potom manipulovat jako s proměnnou:
function vrat(cislo){ return cislo/2 } document.write(vrat(90)+"<br>"); document.write(vrat(90)/vrat(10));
Funkce vrat();
vrátí pomocí příkazu return
výsledek cislo/2
, tedy číslo dvakrát zmenšené. S danou funkcí lze potom nakládat jako s proměnnou.
Události
Když najedete myší na text, text změní barvu, když kliknete zmizí, kliknete myší a jiný text se objeví na obrazovce. Za tím vším stojí události, děje, které nastávají po akci návštěvníka stránky. Události se deklarují u značek HTML.
<script> function napis(){ document.write("ahoj"); } </script> <input type="button" onClick="napis();" value="napiš ahoj" />
Nejprve jsme deklarovali funkci. Potom vložili tlačítko s popiskem 'napiš ahoj'. Atribut onClick="napis();"
je událost, která označuje, že po kliknutí na tlačítko se má provést zvolená funkce.
Zapsání
Událost se zapisuje: jméno události="skript který se má zavolat;"
Seznam událostí
Událostí existuje mnoho.
Událost | Popis a [použití] |
Klasické události | |
---|---|
onAbort | Nastává po přerušení nahrávání obrázku, pouze pro [img] |
onBlur | Nastává při aktivaci jiného prvku, např. při přechodu mezi okny |
onChange | Nastává při změně obsahu prvku, např. select u formulářů |
onDblClick | Nastává při dvojitém kliknutí |
onFocus | Nastává, když se prvek (okno, položka formuláře stane aktivním) |
onKeyDown | Nastává při stisknutí libovolné klávesy klávesnice |
onKeyPress | Stejné jako onKeyDown |
onKeyUp | Nastává při uvolnění stisknuté klávesy |
onLoad | Nastává při nahrání dokumentu [body][frameset] |
onMouseDown | Nastáv, při stisku tlačítka myši |
onMouseMove | Při pohybu kurzoru |
onMouseOut | Při odjetí kurzoru z daného objektu |
onMouseOver | Při najetí kurzoru na objekt |
onMouseUp | Při uvolnění tlačítka myši |
onReset | Při vymazání formuláře [form] |
onResize | Změna velikosti okna [frame][body][frameset] |
onSelect | Při zvýraznění, stisk [shift] a šipek, nebo vybrání myší |
onSubmit | Při odesílání formuláře [form] |
onUnLoad | Při ukončení prohlížení stránky [body][frameset] |
Události podporované jen Microsoft Internet Explorer 4.0 a vyššími | |
onBack | Při stisknutí tlačítka [ZPĚT] |
onCopy | Při kopírování do schránky [Ctrl+C] |
onPaste | Při vkládání ze schránky [Ctrl+V] |
onCut | Při vyjmutí do schránky [Ctrl+X] |
onForward | Při stisknutí tlačítka [VPŘED] |
onHelp | Při volání nápovědy, např [F1] |
onMouseDrag | Při pohybu myši se stisknutým tlačítkem |
onMouseWheel | Při rolování kolečkem |
onMove | Při pohybu okna prohlížeče |
Další: JavaScript - větvení
Zajímavost: Test událostí
Vyhledávání
Základy
Zajímavosti
DOM
Poradna
Pokud si nevíte rady, chcete kontakt na spolehlivého tvůrce webu, či vás zajímá cizí názor, ozvěte se.