Weblap Hová jutunk?

Az event objektum. 920

Az event objektum néhány tulajdonsága. 920

Az event objektum tárolja a bekövetkezett eseményeket, melyeket az objektum tulajdonságainak nevezünk. Ezeket a tulajdonságokat Explorer és Mozilla nem mindig ugyan úgy alkalmazza, azaz néhány tulajdonságnál, másképp tárolja a bekövetkezett eseményt.

Esemény, azaz event
Tulajdonság
Explorer Mozilla
Lenyomott egérgombevent.button
Bal gomb = 1
Jobb gomb = 2
event.button
Bal gomb = 0
Jobb gomb = 2
Esemény bekövetkeztének X koordinátájaevent.clientXevent.pageX
Esemény bekövetkeztének Y koordinátájaevent.clientYevent.pageY
Esemény során az ALT billentyűt, lenyomták vagy sem event.altkey  
Esemény során az Ctrl billentyűt, lenyomták vagy sem event.ctrlkey  
Esemény során az Shift billentyűt, lenyomták vagy sem event.shiftkey  
Esemény során, melyik módosító billentyűt nyomták le
(Alt, Ctrl, Shift)
  event.modifiers
Lenyomott billentyű kódja (Unicode)event.keyCodeevent.which
Terület, azaz objektum, ahol az esemény bekövetkezett event.srcElement event.target

Az onKeyPress, azaz a lenyomott billentyű eseménykezelője XHTML oldalon.
Azt, hogy mi történjen billentyű lenyomásakor, zárójelek között határozzuk meg.

Példa egy adott területre, azaz objektumra:

<body onKeyPress="getkey(event);">

JavaScript fájlban a függvényünket úgy határozzuk meg, hogy az eseményt paraméterként vegye át.
function getkey(e) {.....}

Mozilla így is megoldaná, de Explorer a window.event objektumban tárolja az eseményt.
Ezért kell még egy kód, mely megkeresi az event objektumot.
function getkey(e) {
if (!e) e=window.event;
}


A fenti kódunk, megvizsgálja, hogy az e változót meghatároztuk-e már. Ha nem, akkor fogja a window.event objektumot, és az e változóba helyezi. Innentől bármelyik böngészőt alkalmazzuk, működőképes eseményobjektumunk lesz.

Megjegyzés:
A fenti kódban szereplő getkey mint függvénynév, és e mint változónév helyett mindenki tetszésének megfelelő szót vagy karaktert alkalmazhat!

Leütött karakter

Melyik billentyűt nyomták le, megkapjuk az ASCII kódot

<body onKeyPress="LeutottKarakter(event);">

function LeutottKarakter(e) {
if (e.keyCode) keycode=e.keyCode;
else keycode=e.which;

//Az ASCII kód visszaalakítása karakterré, azaz betűre, a karakterlánc átalakító függvénnyel fromCharCode
karakter=String.fromCharCode (keycode);
}

Vissza a lap elejére