Sugrįšk, kol nevėlu...
("JavaScript" mažosios gudrybės)

Ar niekad nesusimąstėte apie mygtuką "Grįšk atgal"? Tūlesnis ims ir paklaus, - o kuriem galui jo reikia? Na negi malonu tempti ranką su pele (o ir pelės kartais ne pirmos jaunystės ir kokybės būna...) kažkur į viršų ir ieškoti peržiūros programos (kartais net mikroskopinio) "Back" mygtuko?

Antra, daugelis elektroninių leidėjų taip pamėgo rėmelius, kad net nenumato "supaprastinto" savųjų puslapių varianto (kaip kad BNN). Na aišku jiems tada ne motais ir ne tik tai, kad ne visos peržiūros programos leidžiasi "įrėminamos" (kaip ir nuostabiai rytietiškų šokių vadovei ir šokėjai, kuriai paskirtas 'Grybų' puslapiukas, - kurios OS/2 WebExplorer kategoriškai atsisako vienu metu žvelgti pro kelis langelius, - o ir piešinukus didinti/mažinti jam per sunku).

O jeigu ir "leidžiasi", tai kaip "Netscape Navigator" 2.x versijoje "Back" mygtukas nušokdina ne prie ankstesnio dokumento atskirame rėmelyje, - ko dažniausiai ir norima, - o prie viso ankstesnio puslapio, - t.y. visiškai palieka tą puslapį su rėmeliais.

Taigi, yra prasmė tokiam "nuosavam" mygtukui, kurio veikimas 'Vartiklyje' realizuotas H.Hesės eilėraštyje 'Raidės'. Galite pasižiūrėti, jei tik jūsų peržiūros programa susikalba su "JavaScript"!

O jis realizuojamas nepaprastai lengvai (pastaba, žemiau pateikiamame pavyzdyje ne mygtukas, o paprasta nuoroda, - bet argi nuo to skauda dantis?):

<A HREF="javascript:history.go(-1)"
   onMouseOver="self.status=document.referrer;return true">
   Grįšk atgal!</A>

Šiame pavyzdėlyje bandoma (pagal sąlygą "onMouseOver" - kai žymeklis virš nuorodos) būsenos eilutėje nurodyti dokumentą, į kurį bus nušokama, tačiau dėl kai kurių sunkiai suvokiamų priežasčių galima sulaukti netikėtų šalutinių efektų.

Lygiai tokiu pat būdu 'Vartiklio' turinyje slepiamos tikrosios nuorodos, vietoj jų "išmetant" kokį nors šmaikštų posakį. Tiesa, 'Vartiklyje' tai daroma saugiau, nes (palaukit, palaukit, tuoj prisiminsiu kodėl)

kai kuriose terpėse, pvz., Windows'95, jis korektiškai neveikia, t.y. kursoriui patekus virš nuorodos, pranešimas būsenos eilutėje užrašomas, tačiau nuėjus į šalį, būsenos eilutė nėra pakeičiama reikšme "window.defaultStatus", - t.y., nutylint nėra išvaloma.

Todėl 'Vartiklyje' realizuota maža procedūra, kuri, išvedusi pranešimą, po kurio laiko pati jį ištrina. Ir pasidaro katės žaidimas su pele, - ar suspėsi per nurodytą laiką perskaityti, kas ten parašyta? Interaktyvu! :-)

O žemiau tos procedūros tekstas. Jei norite pažiūrėti kaip veikia, pavaikščiokite virš visų šio straipsnelio, esančio adresu:
http://www.spauda.lt/java/javatips.htm
nuorodų. Linksmų žaidimų ir iki kito susitikimo prie "Java" kavos puodelio!

<SCRIPT LANGUAGE="JavaScript">

<!-- Slepiamės, - apie tai reikia pažiūrėti į ankstesnių Nr. straipsniuką
// Pirmiausia nustatome, kiek milisekundžių leista "kyboti" pranešimui
   KABOTI = 8000

// Funkcija puslapyje kviečiama taip:
//  <A HREF="kitas.htm" onMouseOver="return Pakabinti('Pranešimas')">
   function Pakabinti (tekstas) {
     window.status = tekstas
     setTimeout("Valyti()", KABOTI)
   }
// Galite papildomai paskaityti vieno iš ankstesnių 'Vartiklio' numerių
// straipsniuką, minintį 'bėgančią eilutę'
   function Valyti() {
     window.status = ""
   }
// -->
</SCRIPT>


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


Šiuo metu taip pat galite pasiskaityti straipsniukus apie:
Kas yra HTML?
Kas yra CGI?
JavaScript pradžiamokslį,
JavaScript eilutes,
JavaScript laiko objektas,
JavaScript rėmeliuose ir
Java 8: Optional prieš null
Įvadas į Perl kalbą: Kas naudoja Perl?
Kokie nauji JavaScript elementai naujoje versijoje?.
Kaip Web'e atsiranda piešinukai
Anotacijos Java kalboje
Unix komandinės eilutė
Tiesiog - Java