Mielőtt belebonyolódnánk a részletekbe azt javaslom, nyomogassuk az alábbi nyomógombokat, és húzogassuk az egeret a táblázat elemei felett. Amit cselekedni fogunk az meglehetősen haszontalan, de annál látványosabb lesz. Egyike azon trükköknek, amit a JavaScript nyelv segítségével valósíthatunk meg. (Időközben Navigator + Unix összeállításon is teszteltem, nekik a refresh frame parancsot is használniuk kell.)
Zöld lesz a háttér, ha elhúzod felette az egeret. | Piros lesz a háttér, ha elhúzod felette az egeret. | Visszaáll az eredeti háttér, ha elhúzod felette az egeret. |
A háttérszínek megváltoztatásához a következő három függvényt használtuk fel. (Ezek szerint a JavaScriptben lehet függvényeket definiálni.)
<script LANGUAGE="JavaScript">
function PirosHatter() {document.bgColor="#ff0000"}
function ZoldHatter() {document.bgColor="#00ff00"}
function EredetiHatter() {document.bgColor="#ffffff"}
</script>
Láthatjuk, hogy a függvényeket a <script></script> utasítások közé kell helyezni, a függvény definiálásához a function kulcsszót kell használni és ne felejtsük el a kapcsos zárójelet sem. (Aki C-ben programozott már, az nem fogja.)
A document az éppen aktuális dokumentumra (jelen esetben a frame tartalmára) utal. A document.*** azt jelenti, hogy a dokumentumunk valamilyen *** tulajdonságát, jelen esetben a háttérszínét kívánjuk megváltoztatni.
A document nevű objektumnak a következő tulajdonságait változtathatjuk meg hasonlóképpen:
alinkColor | Az aktív linkek szine (active link) |
bgColor | Háttérszín |
fgColor | Elotérszín |
linkColor | A linkek szine |
vlinkColor | A már használt linek szine (visited link) |
Nézzük meg, hogy pl. a piros nyomógomb esetén mi aktivizálja a függvényeket!
<FORM> <INPUT TYPE="button" value="Piros háttér" onclick="PirosHatter()"> </FORM>
Az onclick="PirosHatter()" azt jelenti, hogy klikkentés esetén a PirosHatter() függvény dolgozik.
Nézzük meg, hogy pl. a második esetben - az egérmozgatáskor - aktivizálja a függvényeket!
<a href="js1.htm#eleje" onmouseover="PirosHatter(); return true"> Piros lesz a háttér, ha elhúzod felette az egeret.</a>
Az onmouseover="PirosHatter();return true" azt jelenti, hogy az egér átmozdítása esetén a PirosHatter() függvény dolgozik.
hasonló módon lehet a bal oldalon alul található státuszmezőben szöveget elhelyezni.
Itt az ablak nevű objektum státuszmező nevű tulajdonságát kell átírni:
onMouseOver="window.status='Ez a státuszmezo'; return true"
Megváltoztatja a státuszmezőt, ha elhúzod felette az egeret.
Ezt a figyelmeztető ablakot kétféleképpen állíthatjuk elő. A hosszabb, de áttekinthetobb módszer: Először létrehozunk egy függvényt, amelynek egyetlen feladata, az adott ablak elkészítése, azután elkészítünk egy űrlapot, amiben legyártunk egy nyomógombot, és ebbe belehelyezünk egy utasítást, ami kattintás esetén meghívja a függvényt.
<script LANGUAGE="JavaScript">
function felugrik() {alert("Lenyomtad ezt a gombot!!")}
</script>
<form> <input type="button" value="Nyomd meg ezt a gombot!" onclick="felugrik()"> </form>
A rövidebb módszer az előző zanzásítása:
<form> <input type="button" value="Nyomd meg ezt a gombot!" onclick="alert('Lenyomtad ezt a gombot!')"> </form>
Figyeljük meg, hogy az idézőjelbe ágyazott idézőjelet hogyan kell
megoldani!
Az előző leckében szerzett ismereteinkkel kombinálva újabb tréfákat eszelhetük ki:
Ne közelítsd meg ezt a linket!
A figyelmeztető ablaknál hasznosabb lehet, ha döntést hozhatunk a felpattanó ablak segítségével:
A forrást megnézve láthatjuk, hogy a confirm() függvény kimenete igen illetve nem lesz. Ha az if után a zárójelben igen van, akkor a {} kapcsos zárójelben levő parancsok végrehajtódnak. :
<script> function biztospiros() {if(confirm("Biztos, hogy piros hátteret akarsz?")) {document.bgColor="ff0000"} } </script>
<center> <form> <input type="button" value="Piros hátteret akarok!" onclick="biztospiros()"> </form> </center>
Az else kifejezés segítségével azt is megmondhatjuk, mi legyen akkor, ha nem az OK gombot nyomjuk. Az if-eket egymásba is ágyazhatjuk. Ezt illusztrálja következő példa, amelyben nemcsak a piros hátteret állíthatjuk be, hanem ha nem akarunk pirosat, akkor zöldet is választhatunk.
<script> function biztospiroszold() {if(confirm("Biztos, hogy piros hátteret akarsz?")) {document.bgColor="ff0000"} else {if(confirm("Zöldet akarsz?")) {document.bgColor="00ff00"} } } </script>
<center> <form> <input type="button" value="Piros hátteret akarok!" onclick="biztospiroszold()"> </form> </center>
Leckénk célja, hogy az itt látható óra fabrikálásának titkát megtudjuk.
Egy űrlapot hozunk létre, melynek input mezőjében jelenik meg az óra. Ennek az a magyarázata, hogy az input mező azon kevés objektumok egyike, amit a JavaScript segítségével mind az Explorerben mind a Netscapeben át lehet írni. Ezen űrlap kódját láthatjuk itt:
<center> <form NAME="OraUrlap"> <b>Az Ön gépe szerint a pontos ido:</b> <INPUT TYPE="text" NAME="kijelzo" SIZE=9 VALUE=""> </form> </center>
Az alábbi függvény végzi a mező frissítését:
<head> <script LANGUAGE="JavaScript">
function JavasScriptOra() { var ido = new Date() var ora = ido.getHours() var perc = ido.getMinutes() var masodperc = ido.getSeconds() var kiir = "" + ora + ":" kiir += ((perc < 10) ? "0" : "") + perc + ":" kiir += ((masodperc < 10) ? "0" : "") + masodperc document.OraUrlap.kijelzo.value = kiir id = setTimeout("JavasScriptOra()",1000) } </script> </head>
A függvényt a fejlécben kell elhelyeznünk. Az ido nevu változó az alábbi módon veszi fel az aktuális dátum értékét:
var ido = new Date()
Az ora változóba az óra értékét az alábbi módon tesszük:
var ora = ido.getHours()
Hasonlóképpen kapjuk meg a perceket és másodperceket. A kiir változóba a kiíratni kívánt szöveget tesszük. A képletet a "" szimbólummal kezdjük, ami egy nulla hosszúságú karaktert ad, de jelzi, hogy nem számmal, hanem szöveggel van dolgunk így a + karakter nem összeadást, hanem karakterösszefüzést jelent. Az a += b formula az a = a + b formulát rövidíti. (C-ben ez bevett szokás.)
Az ((a < b) ? "c" : "d") azt jelenti, hogy ha a teljesül,
akkor c, ha nem akkor d. Esetünkben:
((perc < 10) ? "0" : "") + perc
az egyjegyu percek elé betesz egy 0-t. Így kapunk mindig kétjegyu számot.
Az document.OraUrlap.kijelzo.value = kiir formula nagyon fontos. A documentum
nevu objektumnak van egy OraUrlap névre hallgató objektuma. (Így neveztük el az
urlapot.) Azon van egy kijelzo nevu objektum - az írni kívánt mezo. Ennek az
értékét (value) tesszük egyenlové a kiir változó értékével.
Az
id = setTimeout("JavasScriptOra()",1000)
egy rekurzív trükk. A
setTimeout(f(),x)
utasítás az f() függvényt hívja meg x ezred másodpercnyi ido múlva. Jelen esetben a függvény önmagát hívja meg - 1 másodpercenként.
Gyakorlásként egy könnyebben kivitelezheto példát nézzünk meg, amely a feltételes utasításokat beágyazva tartalmazza. A nyomógombot megnyomva a napszaknak megfelelo köszönést végez programunk.
A forrás:
<SCRIPT language="JavaScript"> function Napszak() { var ido = new Date() var ora = ido.getHours() var kiir = "Jó" +((ora > 19) ? " estét" : ((ora > 8) ? " napot" : ((ora > 3) ? " reggelt" : " estét"))) + "!" document.Ora2Urlap.kijelzo.value = kiir } </SCRIPT> <center> <FORM NAME="Ora2Urlap"> <input type="button" value="Nyomd meg ezt a gombot!" onclick="Napszak()"> <INPUT TYPE="text" NAME="kijelzo" SIZE=15 VALUE=""> </FORM> </center>
Válassz évet, egy hónapot és egy napot:
Leckénk célja, hogy az itt látható öröknaptár fabrikálásának titkát megtudjuk.
Egy űrlapot hozunk létre, melynek első mezőjében jelenik meg az év, a második és harmadik mezőben a megfelelő hónap és nap, a negyedikben pedig a megfelelő napot nézhetjük meg.
A fejlécben (head) három függvényt definiáltunk.
<head> <script LANGUAGE="JavaScript"> function NapFuggveny(szam) { if (szam == 0) {return "vasárnap"} if (szam == 1) {return "hétfö"} if (szam == 2) {return "kedd"} if (szam == 3) {return "szerda"} if (szam == 4) {return "csütörtök"} if (szam == 5) {return "péntek"} if (szam == 6) {return "szombat"} } function MaiNap() { var ido = new Date() Ev = datum.getYear() Ho = datum.getMonth() Nap = datum.getDate()-1 Hetnap = datum.getDay() document.ValasztoUrlap.EvValasztas.value =Ev+1900 document.ValasztoUrlap.HonapValasztas.selectedIndex = Ho document.ValasztoUrlap.NapValasztas.selectedIndex = Nap document.ValasztoUrlap.HetNapja.value = NapFuggveny(Hetnap) } function OrokNaptar() { var ujdatum = new Date() ujdatum.setYear(document.ValasztoUrlap.EvValasztas.value) ujdatum.setMonth(document.ValasztoUrlap.HonapValasztas.selectedIndex) ujdatum.setDate(document.ValasztoUrlap.NapValasztas.selectedIndex+1) document.ValasztoUrlap.HetNapja.value = NapFuggveny(ujdatum.getDay()) } </script> </head>
Urlapunk pedig így fest:
<B>Válassz évet, egy hónapot és egy napot: </B> <FORM NAME="ValasztoUrlap"> Év: <INPUT TYPE="text" NAME="EvValasztas" SIZE= >. Hónap: <SELECT NAME="HonapValasztas" onChange="OrokNaptar()"> <OPTION>január <OPTION>február<OPTION>március<OPTION>április <OPTION>május<OPTION>június<OPTION>július<OPTION>augusztus <OPTION>szeptember<OPTION>október<OPTION>november <OPTION>december </SELECT> Nap: <SELECT NAME="NapValasztas" onChange="OrokNaptar()"> <OPTION>1<OPTION>2<OPTION>3<OPTION>4 <OPTION>5<OPTION>6<OPTION>7<OPTION>8 <OPTION>9<OPTION>10<OPTION>11<OPTION>12 <OPTION>13<OPTION>14<OPTION>15<OPTION>16 <OPTION>17<OPTION>18<OPTION>19<OPTION>20 <OPTION>21<OPTION>22<OPTION>23<OPTION>24 <OPTION>25<OPTION>26<OPTION>27<OPTION>28 <OPTION>29<OPTION>30<OPTION>31 </SELECT> <p> <b>A hét megfelelo napja:</b> <INPUT TYPE="text" NAME="HetNapja" SIZE=9> </FORM>
Vizsgáljuk meg, hogyan muködnek a fenti formulák!
A MaiNap() függvénnyel érdemes kezdeni. Az datum változó a gépünk
által szolgáltatott dátumot veszi fel értékül. A datum objektum getYear()
paramétere az év utolsó két jegyébol alkotott számot, a getMonth() a hónap
sorszámát (Január=0,...,), a getDate() a napot, getDay() a hét megfelelő
napjának sorszámát, (vasárnap=0,...,). Ezt a NapFuggeny() is sugallja, amely az
adott sorszámokhoz a napok magyar neveit rendeli.
Az űrlap input mezoinek értékét a value, a legördülo menu kiválasztott elemének sorszámát (0,...) az selectedIndex paraméter mondja meg.
Az onChange=... azt mondja meg, milyen fügvényt hívjon meg a böngésző, amikor megváltoztatjuk a gördülomenű állapotát. Esetünkben az OrokNaptar() elnevezésű függvényt hívja meg, amely kiszámolja a kívánt napot.
Lehet, hogy kicsit unalmas, de ezt a feladatot is csak űrlap segítségével lehet megoldani, ugyanis - mint azt már korábban említettem - ez azon kevés objektumok egyike, melyet mindkét böngésző segítségével át lehet írni.
Mindenféleképpen a fejlécben kell definiálni a Fenyujsag() függvényt.
<head> <script LANGUAGE="JavaScript"> Sebesseg = 200; Karakterszam = 1; function Fenyujsag() { window.setTimeout('Fenyujsag()',Sebesseg); var uzenet = document.megjelenito.szoveg.value; document.megjelenito.szoveg.value = uzenet.substring(Karakterszam) + uzenet.substring(0,Karakterszam); } </script> </head>
A dokumentum testébe be kell írni az onLoad=Fenyujsag() utasítást.
<BODY onLoad="Fenyujsag()">
Űrlapunk pedig :
<CENTER> <FORM NAME="megjelenito"> <INPUT NAME="szoveg" SIZE=50 VALUE=" -- A mostani leckénkben fényújságot készítünk! "> </FORM> </CENTER>
Hogyan működik a fényújság?
A Sebesseg változó a karakterek futásának sebességét adja meg
milliszekundumokban. A Karakterszam azt határozza meg, hogy egyszerre hány
karakter ugorjon. A window.setTimeout(függvény(), idő) az argumentumban első részében
található függvényt hívja meg az argumentum második változójában látható idő múlva
- azaz jelen esetben ennyi idő múlva újból és újból meghívja önmagát.
Az uzenet nevű változó dokumunetumunk megjelenito nevű űrlapjának szoveg nevű mezőjének tartalmával egyenlő.
Az uzenet.substring(x) a változó x hosszúságú részét adja vissza a végétől számítva. Az uzenet.substring(a,x) a változó x hosszúságú részét adja vissza, de az a. karaktertől kezdve.
Felvetődhet a kérdés, miért használnak Java programokat fényújság
készítésre, ha azt a sokkal kisebb erőforrást igénylő - itt látott - JavaScript
programocskával is meg lehetne oldani. Láttuk, hogy a teljes szövegnek a dukumentumban
kell lenni, a formát pedig az űrlap lehetőségei korlátozzák.
Ha "tökéletes" fényújságot szeretnénk, ahhoz Java program kell.
Egyre kevesebb kommentárt fűzök, hiszen a használt függvények ismerősek, csak erre a célra nem használtuk még oket.
Természetesen ezt a feladatot is csak urlap segítségével lehet megoldani, ugyanis - mint azt már korábban említettem - ez azon kevés objektumok egyike, melyet mindkét böngésző segítségével át lehet írni.
A számológéphez szükséges adatbeviteli űrlapot a szép elrendezés érdekében táblázatba rendezzük. A kijelző céljait szolgáló mezőt kijelzo névre kereszteltem, hasonlóan beszédes magyar nevet adtam minden más gombnak és függvénynek.
Táblázatunk:
<form name="Szamologep"> <table border="5" bgcolor=008080> <td > <table border="1"> <tr> <td align="middle" colspan="3"><input type="text" size="20" name="Kijelzo" value="0" width="100%"></td> <td> </td> <td><input type="button" value=" C " onclick="Kistorlesfuggveny()"></td> <td><input type="button" value=" CE " onclick="Nagytorlesfuggveny()"></td> </tr> <tr> <td><input type="button" value=" 7 " onclick="Gombmegnyomva(7)"></td> <td><input type="button" value=" 8 " onclick="Gombmegnyomva(8)"></td> <td><input type="button" value=" 9 " onclick="Gombmegnyomva(9)"></td> <td> </td> <td><input type="button" value=" +/- " onclick="Neg()"></td> <td><input type="button" value=" % " onclick="Szazalek()"></td> </tr> <tr> <td><input type="button" value=" 4 " onclick="Gombmegnyomva(4)"></td> <td><input type="button" value=" 5 " onclick="Gombmegnyomva(5)"></td> <td><input type="button" value=" 6 " onclick="Gombmegnyomva(6)"></td> <td> </td> <td align="middle"><input type="button" value=" + " onclick="Muvelet('+')"></td> <td align="middle"><input type="button" value=" - " onclick="Muvelet('-')"></td> </tr> <tr> <td><input type="button" value=" 1 " onclick="Gombmegnyomva(1)"></td> <td><input type="button" value=" 2 " onclick="Gombmegnyomva(2)"></td> <td><input type="button" value=" 3 " onclick="Gombmegnyomva(3)"></td> <td> </td> <td align="middle"><input type="button" value=" * " onclick="Muvelet('*')"></td> <td align="middle"><input type="button" value=" / " onclick="Muvelet('/')"></td> </tr> <tr> <td><input type="button" value=" 0 " onclick="Gombmegnyomva(0)"></td> <td><input type="button" value=" . " onclick="Tizedes()"></td> <td colspan="3"> </td> <td><input type="button" value=" = " onclick="Muvelet('=')"></td> </tr> </table> </td> </tr> </table> </td> </table> </form>
A függvények ismertetése, helyett álljon itt a JavaScript program, melyben a szükséges kommentárokat magyarul olvashatják.
<script language="JavaScript"> <!-- // Több függvényben használt változók var FSzamologep = document.Szamologep; var Elozo = 0; // Elozoleg bevitt szám var VanUjSzam = false; // Jelzi, hogy van-e új szám var FuggoMuvelet = ""; // Jelzi a függo muveletet. function Gombmegnyomva (Num) { if (VanUjSzam) { FSzamologep.Kijelzo.value = Num; VanUjSzam = false; } else { if (FSzamologep.Kijelzo.value == "0") FSzamologep.Kijelzo.value = Num; else FSzamologep.Kijelzo.value += Num; } } function Muvelet (Op) { var Kijelzo = FSzamologep.Kijelzo.value; if (VanUjSzam && FuggoMuvelet != "="); // A felhasználó még nem végzett, ne csimálj semmit else { VanUjSzam = true; if ( '+' == FuggoMuvelet ) Elozo += parseFloat(Kijelzo); else if ( '-' == FuggoMuvelet ) Elozo -= parseFloat(Kijelzo); else if ( '/' == FuggoMuvelet ) Elozo /= parseFloat(Kijelzo); else if ( '*' == FuggoMuvelet ) Elozo *= parseFloat(Kijelzo); else Elozo = parseFloat(Kijelzo); FSzamologep.Kijelzo.value = Elozo; FuggoMuvelet = Op; } } function Tizedes () { var curKijelzo = FSzamologep.Kijelzo.value; if (VanUjSzam) { curKijelzo = "0."; VanUjSzam = false; } else { if (curKijelzo.indexOf(".") == -1) curKijelzo += "."; } FSzamologep.Kijelzo.value = curKijelzo; } function Kistorlesfuggveny () { // Törli a legutoljára bevitt számot FSzamologep.Kijelzo.value = "0"; VanUjSzam = true; } function Nagytorlesfuggveny () { // Törli a legutoljára bevitt számot, a függö müveletet, mindent nulláz Elozo = 0; FuggoMuvelet = ""; Kistorlesfuggveny(); } function Neg () { FSzamologep.Kijelzo.value = parseFloat(FSzamologep.Kijelzo.value) * -1; } function Szazalek () { FSzamologep.Kijelzo.value = (parseFloat(FSzamologep.Kijelzo.value) / 100) * parseFloat(Elozo); } //--> <script>
Ezen rész szerzôje: Pfaff András http://pfaff.home.ml.org
Látom UNIX rajongó vagy. Te Microsoft Internet Explorer-t használsz, aminek verziója: 4.0 (compatible; MSIE 5.0; Windows 98; DigExt)Próbáltad már a Netscape-et ? ;-) |
A forráskód:
<SCRIPT language="JavaScript"> var whichVersion = navigator.appVersion; var platform = ""; var i = 1; while (i < whichVersion.length) { if (whichVersion.substring(i,i+1) == "(") { if (whichVersion.substring(i+1,i+4) == "Mac") { platform="Mac"; } else if (whichVersion.substring(i+1,i+6) == "Win16") { platform="Windows 3.x"; } else if (whichVersion.substring(i+1,i+6) == "Win95") { platform="Windows 95"; } else if (whichVersion.substring(i+1,i+6) == "WinNT") { platform="Windows NT"; } else { platform = "UNIX"; } break; } i = i + 1;} document.writeln('<center> Látom </font>' + platform + ' </font> rajongó vagy.</font>') var Color="red" document.write("<CENTER><B>Te <font color=" + Color + ">") document.write(navigator.appName) document.write("</font>-t használsz, aminek verziója: <font color=" + Color +">") document.write(navigator.appVersion) document.write("</font></B></CENTER>") if (navigator.appName=="Microsoft Internet Explorer") {document.write("Próbáltad már a Netscape-et ? ;-)<p>")} if (navigator.appName=="Netscape") {document.write("<CENTER>Okos döntés. :-) <p>")} </SCRIPT>
Lássuk a részleteket!
JavaScriptben van egy függvény, a "navigator.appVersion", amelyik a
browser verzióját adja vissza. Ezt tároljuk a
whichVersion változóban, később még szükségünk lesz rá!
var platform = ""; var i = 1;
Itt beállítunk néhány alapértéket. A platform változóban fogjuk tárolni az
aktuális platform megnevezését. A whichVersion
stringünk tartalma nem egyszerüen egy verziószám, hanem annál több. Netscape
Navigator 4.01 esetén például ezt kapjuk
eredményül: "4.01 [en] (Win95; I)". A mi esetünkben ebbol nekünk csak
a string eleje érdekes, ezentúl csak ezt vizsgáljuk.
while (i < whichVersion.length)
Egy ciklust indítunk, ami végignézi egyenként a whichVersion változónk karaktereit.
{
if (whichVersion.substring(i,i+1) == "(")
{
Ha nyitó zárójelet talál a változóban, akkor már jó helyen jár, ugyanis itt
tárolódik az, hogy milyen operációs rendszer alatt
futtatjuk a browserünket. Ezután már csak néhány vizsgálat és már tudjuk is a
használt platformot.
if (whichVersion.substring(i+1,i+4) == "Mac") { platform="Mac";
}
else if (whichVersion.substring(i+1,i+6) == "Win16") {
platform="Windows 3.x";
}
else if (whichVersion.substring(i+1,i+6) == "Win95") {
platform="Windows 95";
}
else if (whichVersion.substring(i+1,i+6) == "WinNT") {
platform="Windows NT";
}
else { platform = "UNIX";
} break; }
i = i + 1;}
Mire ide ér a script, a platform változóban már a szükséges adat szerepel, már
csak ki kell iratnunk a document.write
paranccsal.
document.writeln('<center> Látom </font>' + platform + ' </font> rajongó vagy.</font>')
Most már a képernyon van az első sor, ami a használt platformról ad információt.
Itt kezdődik a browser tipusának és
verziójának kiiratása:
document.write("<CENTER><B>Te <font color=red>")
document.write(navigator.appName)
document.write("</font>-t használsz, aminek verziója: <font color=" +
Color +">")
document.write(navigator.appVersion)
document.write("</font></B></CENTER>")
A navigator.appName a browser tipusát (Netscape/Internet Explorer...) adja
vissza, mig a már ismert navigator.appVersion a
verziót, a többi adattal együtt.
if (navigator.appName=="Microsoft Internet Explorer")
{document.write("Próbáltad már a Netscape-et ? ;-)<p>")}
Megvizsgáljuk, hogy mi lett az eredmény, és ha a user Internet Explorert használ, bátorítjuk, hogy próbálja ki a Netscape-et.
if (navigator.appName=="Netscape")
{document.write("<CENTER>Okos döntés. :-) <p>")}
</SCRIPT>
JavaScript-ben lehetoségünk van arra, hogy bizonyos eseményekhez - mint Pl. az oldal betöltődése - hozzárendeljünk JS eseményeket: Ez a kód pl. az oldal betöltésekor üdvözli a látogatót:
<head> <SCRIPT LANGUAGE="JavaScript"> function udvozles () { alert("Szia! Üdvözöllek a a JavaScript tanfolyamon!") } </SCRIPT> </head> <BODY onload ="udvozles()">
Itt az onload "utasitást" használtuk, ami betöltéskor meghívja a megadott eljárást. Ugyanígy lehetőségünk van az oldalunk elhagyásakor elköszönni a látogatótól, az OnUnload segítségével, aminek használata ugyanaz :
<head> <SCRIPT LANGUAGE="JavaScript"> function elkoszon () { alert("Köszi a látogatást! Gyere vissza máskor is!") } </SCRIPT> </head> <BODY onUnLoad ="elkoszon()">