Co je to JavaScript?
JavaScript je objektově orientovaný skriptový jazyk, vyvinutý firmami Netscape a Sun. JavaScript vychází z programovacího jazyka JAVA. Pokud chcete do vašich stránek přidat java applet, potřebujete k tomu mít vývojové prostředí javy, nebo alespoň kompilátor. Výsledný applet však často poměrně velký a jeho ladění není taky obvzálště jednoduché. Další nevýhodou je také to, že applet tvoří samostatný soubor a do html souboru se vkládá pouze odkaz na tento soubor, popřípadě některé další parametry, které budou potřebné při konečné kompilaci.
Narozdíl od Javy je JavaScript neoddělitelnou součástí www stránky. Nemusí se nijak kompilovat, pouze vložíme zdrojový text příslušného JavaScriptu přímo do html souboru. Jeho výhody snad ani není třeba zdůrazňovat. Především je to značné odlehčení vaší stránky - JavaScript je oproti appletu s stejnou funkcí o dost menší a to je věc, která by se při dnešní propustnosti linek neměla zanedbávat. Prakticky všechno, co se dá naprogramovat v Javě, se dá zvládnout i v JavaScriptu. Pokud se rozhodnete změnit nějakou maličkost v programu napsaném pomocí JavaScriptu, stačí jen otevřít příslušný html soubor a můžete upravovat. Velkou nevýhodou JavaScriptů je přístupnost zdrojového textu vašeho programu každému uživateli internetu a mírně odlišná podpora tohoto jazyka ve WWW prohlížečích.
Začlenění interního scriptu do stránky
Pro začlenění scriptu do html stránky slouží párový HTML tag <SCRIPT> </SCRIPT>.
<SCRIPT language="JavaScript" type="text/javascript">
. . .
</SCRIPT>
Ale jelikož JavaScript funguje na straně uživatele (prohlížeče) a tak problém nastává v případě, že narazí na uživatele, kteří mají ve svém prohlížeči JavaScript zakázán. Proto se používá HTML komentář, což je dvojice sekvencí znaků , které se na stránce nezobrazují a hlavně se nezobrazuje obsah mezi nimi.
Začlenění tedy poté vypadá takto:
<SCRIPT language="JavaScript" type="text/javascript">
<!--
. . .
//-->
</SCRIPT>
A v případě, že prohlížeč nebude podporovat JavaScripty, tag <SCRIPT></SCRIPT> bude přeskočen. Poté prohlížeč narazí na HTML komentář a vše, co je mezi ním ho nezajímá a nezobrazí.
Začlenění externího scriptu do stránky
Samozřejmě je možné uložit si kód javascriptu do externího souboru, aby zbytečně nezvětšoval obsah stránky a navíc jej můžeme připojit k více stránkám najednou a upravovat pouze externí soubor.
Obsah externího javascriptového souboru s názvem např.: _js.js
function predej_focus(ide){
if(document.getElementById(ide)){
document.getElementById(ide).focus();
}
}
Obsah HTML souboru, do něhož je soubor _js.js připojen a funkce predej_focus() je zavolána a provedena.
<HTML>
<HEAD>
<TITLE>titulek stránky</TITLE>
<SCRIPT language="JavaScript" type="text/javascript" src="_js.js">
</SCRIPT>
</HEAD>
<BODY OnLoad="predej_focus('input_text');">
<FORM action="" method=post>
<INPUT type=text id=input_text>
</FORM>
</BODY>
</HTML>
Události JavaScriptu
Ale asi nejzajímavějšími prvky JavaScriptu jsou tzv. události. V předchozím případě jsou všechny příkazy vykonávány postupně v pořadí, v jakém byly zapsány (podobně jako v jiných struturovaných programovacích jazycích).
JavaScript může však využívat poněkud odlišný přístup, kdy program většinu času nedělá nic a pouze čeká na nějakou událost, na kterou nějakým způsobem zareaguje. V JavaScriptu je definováno několik událostí, na které je možné reagovat. Tou nejznatelnější je asi pohyb myši.
V tomto případě se nepoužívá tag <SCRIPT>, ale správci událostí (např. OnMouseOver - kdy je kurzor myši nad daným objektem, nebo OnKeyUp - kdy uživatel stiskne klávesu a pustí jí) jsou začleňováni přímo do HTML tagů jakoby jejich parametry.
<DIV id="text"></DIV>
<TEXTAREA OnKeyUp="document.getElementById('text').innerHTML=this.value;">
</TExTAREA>