Event objektas
event objektas sugeneruojamas įvykio metu
ir jame yra informacija apie jį. Įvykio atsiradimo metu
event objektas perduodamas į
apdorojimo funkciją.
Event objekto savybės ir metodai
Žemiau pateiktoje lentelėje nurodytos
event objekto savybės ir metodai
ir jų aprašymas:
| Pavadinimas | Aprašymas |
|---|---|
event.currentTarget |
Dabartinis DOM elementas įvykio plitimo stadijoje. Paprastai
ši savybė atitinka this funkciją.
|
event.data |
Neprivalomas parametras. Duomenų objektas, perduodamas į įvykio metodą pridedant vykdomąjį apdorojimą. |
event.delegateTarget |
Elementas, prie kurio buvo pridėtas ką tik iškviestas
jQuery įvykio apdorojimas. Ši savybė yra naudingiausia
deleguotuose įvykiuose, kai apdorojimas pririšamas prie
apdorojamo elemento pirmūno. Nedeliguotiems
apdorojimams, tiesiogiai pririštiems prie elemento,
event.delegateTarget reikšmė atitinka
event.currentTarget reikšmę.
|
event.isDefaultPrevented |
Metodas tikrina ar buvo iškviestas metodas
event.preventDefault
šiam įvykio objektui.
|
event.isImmediatePropagationStopped |
Metodas tikrina ar buvo iškviestas metodas
event.stopImmediatePropagation
šiam įvykio objektui.
|
event.isPropagationStopped |
Metodas tikrina ar buvo iškviestas metodas
event.stopPropagation
šiam įvykio objektui.
|
event.isPropagationStopped |
Metodas tikrina ar buvo iškviestas metodas
event.stopPropagation
šiam įvykio objektui.
|
event.metaKey |
Metodas tikrina ar buvo paspausta
META klavišas įvykio metu.
Atsižvelgiant į platformą, klavišas
gali skirtis. Grąžina true arba
false.
|
event.namespace |
Vardų erdvė, nurodyta įvykio iškvietimo metu. Ši savybė yra naudinga įskiepių autoriams, kurių užduotys priklauso nuo naudojamos vardų erdvės. |
event.pageX |
Rodo pelės padėtį dokumento kairiajame krašte. |
event.pageY |
Rodo pelės padėtį dokumento viršutiniame krašte. |
event.preventDefault |
Jei šis metodas iškviestas, numatytasis
šio įvykio veiksmas nebus atliktas. Pavyzdžiui,
spustelėjimas nuorodoje
neleis pereiti į naują URL. Norint
patikrinti ar šis metodas buvo iškviestas,
galima naudoti metodą
event.isDefaultPrevented.
|
event.relatedTarget |
Grąžina kitą DOM elementą, dalyvaujantį
įvykyje, jei toks yra.
mouseout atveju rodo, ant kurio
elemento yra pele, o mouseover
atveju - iš kurio elemento pelės žymeklis buvo nuvestas.
|
event.result |
Paskutinė reikšmė, kurią grąžino suveikusio įvykio
apdorojimas, nelygi
undefined. Ši savybė gali būti naudinga
gaunant savųjų įvykių reikšmes.
|
event.stopImmediatePropagation |
Atšaukia visų likusių įvykio apdorojimų,
susijusių su elementu, veikimą ir neleidžia
įvykiui plisti aukštyn DOM medyje. Norint
tik užkirsti kelią įvykio plitimui iki
pirmūnų elementų, bet leisti kitiems
įvykio apdorojimams veikti, galima naudoti metodą
event.stopPropagation. Naudokite metodą
event.isImmediatePropagationStopped, kad
patikrintumėte ar buvo iškviestas
event.stopImmediatePropagation šiam
įvykio objektui.
|
event.stopPropagation |
Užkerta kelią įvykio plitimui aukštyn DOM
medyje. Atminkite, kad kiti apdorojimai
tęs veikimą šiam elementui. Šis metodas
veikia saviesiems įvykiams, iškviestiems
naudojant metodą
trigger.
Norėdami patikrinti ar šis metodas buvo iškviestas,
naudokite event.isPropagationStopped.
|
event.target |
DOM elementas, inicijavęs įvykį. Tai gali
būti įvykiui užregistruotas elementas arba
jo palikuonis. Labai naudinga palyginti
event.target ir this, norint nustatyti
įvykio plitimą. Savybė naudinga deleguojant
įvykį, kai įvykiai plinta.
|
event.timeStamp |
Laiko skirtumas milisekundėmis tarp
įvykio sukūrimo naršyklės ir
1970 metų Sausio 1 dienos. Ši savybė gali būti
naudinga nustatant įvykio našumą, gaunant reikšmių
event.timeStamp skirtumą dviem laiko momentams
kode. Jei tiesiog norite
gauti dabartinį laiką įvykio apdorojimo metu,
naudokite metodą
getTime.
|
event.type |
Šioje savybėje nurodytas įvykio tipas. |
event.which |
Ši savybė nurodo, kuri klaviatūros
arba pelės klavišas buvo paspaustas. Pelių atveju:
1 - kairysis klavišas, 2 - ratukas,
3 - dešinysis klavišas. Naudokite
event.which vietoj event.button.
|
Kitos event objekto savybės
Yra ir kitų savybių, kurios nukopijuojamos
į event objektą:
altKey, button, buttons, cancelable,
char, charCode, clientX, clientY,
ctrlKey, detail, eventPhase, key,
keyCode, offsetX, offsetY, originalTarget,
screenX, screenY, shiftKey,
toElement, view.
Norint gauti prieigą prie savybių, neįvardintų aukščiau,
galima naudoti objektą event.originalEvent.
Pavyzdys
Išveskime į div - kurie klavišai buvo paspausti:
<input id="test" value="type something">
<div id="text"></div>
$('#test').on('keydown', function(event) {
$('#text').html(event.type + ": " + event.which);
});
Pavyzdys
Išveskime į div - ant kurio žymės mes spustelėsime:
<body>
<div id="text"></div>
<div>
<p>
<strong><span>click</span></strong>
</p>
</div>
</body>
span, strong, p {
display: block;
padding: 10px;
border: 1px solid black;
}
$('body').click(function(event) {
$('#text').html('clicked: ' + event.target.nodeName);
});
Taip pat žiūrėkite
-
metodas
on,
kuris leidžia pririšti įvykio apdorojimą prie elemento -
metodas
trigger,
kuris leidžia paleisti visus įvykio apdorojimus, pririštus prie elemento nurodyto tipo įvykiams -
metodas
triggerHandler,
kuris leidžia paleisti visus įvykio apdorojimus, pririštus prie elemento - jQuery įvykiai