![]() ![]() ![]() |
![]() |
Najprej si bomo ogledali, kako se dve strani
lahko naložita z enim klikom. Obstajajo tri rešitve. Prva možnost je, da
kreirate gumb, ki po kliku pokliče neko funkcijo. Ta funkcija naloži dve
strani v različna okvirja ali odpre nova okna. Kot boste videli v primerih
spodaj, to sploh ni težko. Imamo vse elemente, ki jih potrebujemo.
Kreirali smo tri okvirje. Prvega uporabimo za gumb. Prva HTML stran je uporabljena le za odpiranje in poimenovanje okvirjev. To tehniko smo spoznali že v tretjem delu pri delu z okvirji:
<HTML> <HEAD> <title>Okvirji</title> </HEAD> <FRAMESET COLS="295,*"> <FRAMESET ROWS="100%,*"> <FRAME SRC="loadtwo.html" NAME="okv1"> </FRAMESET> <FRAMESET ROWS="75%,25%"> <FRAME SRC="cell.html" NAME="okv2"> <FRAME SRC="cell.html" NAME="okv3"> </FRAMESET> </FRAMESET> </HTML>loadtwo.html se naloži v prvi okvir - to je okvir z gumbom.
<HTML> <HEAD> <script language="JavaScript"> <!-- skrivanje function NaloziDve(stran2, stran3) { parent.okv2.location.href=stran2; parent.okv3.location.href=stran3; } // --> </script> </HEAD> <BODY> <FORM NAME="gumbki"> <INPUT TYPE="button" VALUE="2 na enkrat" onClick="NaloziDve('frtest1.html','frtest2.html')"> </FORM> </BODY> </HTML>Funkcija NaloziDve() se izvrši, ko pritisnete gumb. Funkciji podamo dva tekstovna podatka (stran2 in stran3). Če si ogledate funkcijo NaloziDve() lahko vidite, da drugi okvir okv2 naloži stran, ki je definirana kot prvi tekstovni podatek pri klicu funkcije (stran2). Če uporabite več različnih gumbov za odpiranje različnih strani lahko to funkcijo večkrat uporabite. Vse kar morate narediti, je, da podate različne URL-naslove strani.
Druga rešitev je, da uporabite hyperlink-e. Nekateri primeri izgledajo
takole:
<a href="vaslink.htm onCLick="VasaFunkcija()">
A to ne deluje na vseh platformah. Zato tega raje ne uporabljajte.
Enak učinek lahko dosežemo z drugo metodo. JavaScript funkcijo lahko kličemo
na sledeč način:
<a href="javascript:mojafunkcija()">Moj Link</a>Preprosto, pa še na vseh brskalnikih deluje. Vse kar morate napisati, je javascript: in nato ime vaše funkcije kot vas 'link'. Če kličete funkcijo 'NaloziDve' iz prejšnjega primera lahko naložite dve strani s klikom na eno povezavo.
Tretjo možnost nalaganja dveh strani hkrati lahko kombinirate z gumbom
ali s hipertekst povezavo. Pristop k stvari je malce drugačen. Sprva naložimo
eno HTML-stran v en okvir:
<a href="dobiokv2.html" target"okv2">Klikni me!</a>
To že znamo. A zdaj naloženi strani dodamo onLoad dogodek. dobiokv2.html
datoteka bi izgledala takole:
<HTML> <BODY onLoad="parent.okv3.location.href='dobiokv3.html'; return true;"> bla bla bla </body> </html>Seveda bi morali to dodati v vsak dokument, ki bi ga naložili v drugi okvir.
Drug pogost problem je, kako naložiti novo stran
v novo okno. Okno se bo odprlo, ko bo uporabnik kliknil na povezavo. Vse
kar morate narediti, je, da dodate target-lastnost vašemu tag-u. To izgleda
takole:
<a href="kamorkoli.html" target="Novo Okno">Pojdi!</a>
Zdaj si bomo ogledali različne operatorje, ki jih lahko uporabimo v JavaScript-u. Z operatorji lahko skrajšate in predvsem izboljšate vase skripte. Na primer, da želite vedeti, če je neznanka x vecja od 3 manjša od 10. To bi lahko zapisali takole:
if (x>3) if (x<10) naredinekaj();Funkcija naredinekaj() je klicana, če velja x>3 in x<10. A obstajajo krajši zapisi za za isto stvar:
if (x>3 && x<10) naredinekaj();&& se imenuje AND- operator (IN-operator). Obstaja pa tudi OR- operator (ALI- operator). Tega lahko uporabite, če na primer želite preveriti, če je x enak 5 ali je neka druga neznanka y enaka 17:
if (x==5 || y==17) naredinekaj();Funkcija naredinekaj() je klicana, ko velja, da je x==5 ali y==17. Klicana je tudi, če veljata obe izjavi.
Za izražanje oziroma preverjanje neenakosti pa se uporablja !=.
Obstaja se veliko različnih operatorjev, s katerimi lahko izpopolnite
vaše programe. Za popoln pregled nad operatorji, ki jih lahko uporabljate
v JavaScript-u, uporabite dokumentacijo Netscape-a .
avtor: Žiga
Mahkovec
november, 1998