JavaScript rėmeliuose  

"JavaScript" dinaminės galimybės dar labiau išryškėja naudojant ją kartu su rėmeliais ("frames"). Tad pradžioje pora žodžių apie pačius rėmelius. Tačiau, norint juos naudoti, reikia atminti, kad ne visos peržiūros programos galės 'priimti' tokius puslapius.

Rėmeliai leidžia peržiūros ekraną suskaidyti į kelias sritis, taigi, vienu metu galima įkelti kelis HTML dokumentus arba skirtingose srityse 'žvalgytis' skirtingose to paties dokumento dalyse.

Pavyzdžiui, norint horizontaliai padalinti langą į dvi sritis (kaip parodyta piešinėlyje), reikia įkelti tokį HTML failą, - jo vardas tebūnie 'remai.htm':

<HTML>
<FRAMESET ROWS="50%,50%">
   <FRAME SRC="tekstas.htm" name="tekstas">
   <FRAME SRC="jsform.htm" name="blankas">
</FRAMESET>
</HTML>
Bus sukurtos dvi sritys. Pirmojoje, pavadintoje vardu "tekstas" bus įkeltas failas "tekstas.htm", o antrojoje, pavadintoje vardu "blankas" - failas "jsform.htm".

<FRAMESET ...> apraše ROWS nurodo, kad langą reikia skaidyti horizontaliai, - norint tą padaryti vertikaliai - vietoje ROWS įrašykite COLS. O naudojant kelis <FRAMESET ...> lygius galima sukurti sudėtingą sričių struktūrą, pvz., du lygiai ir kai kurie kiti sąveikos būdai "Vartiklio" puslapyje.

O dabar pereikime prie failų, kurie įkeliami į šias sritis. Iš pradžių pateikiamas failas "tekstas.htm", kuris, praktiškai, teturi vieną funkciją ir yra įkeliamas į sritį "tekstas".

<HTML> <HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!-- Slepiama, apie tai žr. JavaScript pradžiamokslį
function Eilute(str) {
  document.write(str+"<BR>");
}
// -->
</SCRIPT> </HEAD>
<BODY>
Pirmasis rėmelis!<P>
</BODY> </HTML>
Į antrąją "blankas" sritį įkeliamas failas "jsform.htm", kuriame, paspaudus mygtukus, į pirmąją sritį bus įrašomas atitinkamas tekstas:

<HTML> <BODY>
<FORM NAME="mygtukai">

Paspausk  <INPUT TYPE="button" VALUE="Labas"
         OnClick="parent.tekstas.Eilute('Labas, smalsuoli!')">
arba  <INPUT TYPE="button" VALUE="Bla"
         OnClick="parent.tekstas.Eilute('Bla, bla, bla...')">
</FORM> <BR>
</BODY> </HTML>
Paspaudus mygtuką (sąlyga "OnClick") iškviečiama funkcija "parent.tekstas.Eilute(...)". Čia "parent" reiškia veiksnų objektą pagimdžiusį puslapį. Veiksnus objektas, šiuo atveju, yra "blankas" sritis, o jį sukūrė "remai.htm", - taigi į šį objektą ir kreipiasi "parent" nuoroda.

"tekstas" yra pirmosios srities vardas, tad "parent.tekstas" ir nurodo pirmąją sritį. O joje iškviečiama funkcija "Eilute".

Pastaba: Negalima iškart nurodyti kitos srities vardo, pvz., "tekstas.Eilute(...)" nes tarp sričių nėra tiesioginio ryšio ir jos nieko nežino viena apie kitą.

Jei dabar galite pabandyti šio pavyzdėlio "gyvą" iliustraciją.



(C)1996, spalis. Vartiklis. Pasiliktos visos teisės.


Šiuo metu taip pat galite pasiskaityti straipsniukus apie:
Kas yra CGI?
JavaScript pradžiamokslį
JavaScript eilutes
JavaScript laiko objektas
Sugrįšk, kol nevėlu...
Pirmasis „Java“ įskiepis Lietuvoje
Įvadas į Perl kalbą: Kas naudoja Perl?
Lambda išraiškos – Java į naują lygį
Iš kur Javos tas lėtumas?
Kas yra HTML?
Vartiklis