Event objek
Die event objek word gegenereer wanneer 'n
gebeurtenis aktiveer en bevat inligting daaroor. Wanneer die
gebeurtenis voorkom word die event objek na die
handler-funksie oorgedra.
Eienskappe en metodes van die event objek
Hieronder in die tabel word die eienskappe en metodes
van die event objek en hul beskrywing aangedui:
| Naam | Beskrywing |
|---|---|
event.currentTarget |
Die huidige DOM element tydens die borrelfase van die gebeurtenis. Gewoonlik
is hierdie eienskap ekwivalent aan this van die funksie.
|
event.data |
Opsionele parameter. Die data-objek wat na die gebeurtenismetode oorgedra word wanneer die uitvoerbare handler aangeheg word. |
event.delegateTarget |
Die element waaraan die pas-opgeroepen jQuery-gebeurtenishandler
geheg is. Hierdie eienskap is nuttigste
in gedelegeerde gebeurtenisse, wanneer die handler aan 'n
voorouer van die verwerkte element gebind is. Vir nie-gedelegeerde
handlers wat direk aan die element
gebind is, stem die waarde van event.delegateTarget ooreen
met die waarde van event.currentTarget.
|
event.isDefaultPrevented |
Die metode kontroleer of die metode
event.preventDefault
vir hierdie gebeurtenisobjek opgeroep is.
|
event.isImmediatePropagationStopped |
Die metode kontroleer of die metode
event.stopImmediatePropagation
vir hierdie gebeurtenisobjek opgeroep is.
|
event.isPropagationStopped |
Die metode kontroleer of die metode
event.stopPropagation
vir hierdie gebeurtenisobjek opgeroep is.
|
event.isPropagationStopped |
Die metode kontroleer of die metode
event.stopPropagation
vir hierdie gebeurtenisobjek opgeroep is.
|
event.metaKey |
Die metode kontroleer of die
META-sleutel op die oomblik van aktivering
van die gebeurtenis ingedruk was. Afhangende van die platform kan die sleutel
verskil. Gee true of
false terug.
|
event.namespace |
Die naamruimte wat tydens die oproep van die gebeurtenis gespesifiseer is. Hierdie eienskap kan nuttig wees vir die skrywers van inproppe, wie se take van die gebruikte naamruimte afhang. |
event.pageX |
Toon die posisie van die muis relatief tot die linkerkant van die dokument. |
event.pageY |
Toon die posisie van die muis relatief tot die bokant van die dokument. |
event.preventDefault |
Indien hierdie metode opgeroep word, sal die standaardaksie vir
hierdie gebeurtenis nie uitgevoer word nie. Byvoorbeeld, om op 'n skakel
te klik sal nie na 'n nuwe URL lei nie. Om
te kontroleer of hierdie metode opgeroep is, kan die metode
event.isDefaultPrevented gebruik word.
|
event.relatedTarget |
Gee 'n ander DOM element terug wat aan die gebeurtenis deelneem,
indien beskikbaar. Vir
mouseout wys dit op watter
element die muis geplaas is, vir mouseover
van watter element die muiswyser weggetrek is.
|
event.result |
Die laaste waarde wat deur die handler van die
geaktiveerde gebeurtenis teruggegee is, wat nie
undefined is nie. Die eienskap kan nuttig wees
om waardes van eie gebeurtenisse te verkry.
|
event.stopImmediatePropagation |
Kanselleer die werking van alle oorblywende gebeurtenishandlers
wat aan die element gekoppel is en voorkom
dat die gebeurtenis na bo in die DOM-boom borrel. Om
bloot te verhoed dat die gebeurtenis tot
voorouer-elemente borrel, maar die werking van ander
gebeurtenishandlers toe te laat, kan die metode
event.stopPropagation gebruik word. Gebruik die metode
event.isImmediatePropagationStopped om
te kontroleer of
event.stopImmediatePropagation vir hierdie
gebeurtenisobjek opgeroep is.
|
event.stopPropagation |
Voorkom dat die gebeurtenis na bo in die DOM-
boom borrel. Onthou dat ander handlers
vir hierdie element sal voortgaan om te werk. Hierdie
metode werk vir eie gebeurtenisse wat deur die metode
trigger
geaktiveer is.
Om te kontroleer of hierdie metode opgeroep is,
gebruik event.isPropagationStopped.
|
event.target |
Die DOM element wat die gebeurtenis geïnisieer het. Dit kan
die element wees wat vir die gebeurtenis geregistreer is of
'n afstammeling daarvan. Dit is baie nuttig om
event.target en this te vergelyk, om vas te stel
of die gebeurtenis borrel. Die eienskap is nuttig by die delegering
van 'n gebeurtenis, wanneer gebeurtenisse borrel.
|
event.timeStamp |
Die tydsverskil in millisekondes tussen
die oomblikke van die skepping van die gebeurtenis deur die blaaier en
1 Januarie 1970. Die eienskap kan
nuttig wees om die werkverrigting van die
gebeurtenis te bepaal deur die verskil in waardes van
event.timeStamp vir twee tye
in die kode te verkry. As jy bloot
die huidige tyd binne die gebeurtenishandler wil
kry, gebruik die metode
getTime.
|
event.type |
Hierdie eienskap spesifiseer die tipe gebeurtenis. |
event.which |
Hierdie eienskap dui aan watter sleutel
van die sleutelbord of muis ingedruk is. Vir die muis:
1 - linkerknop, 2 - wiel,
3 - regterknop. Gebruik
event.which in plaas van event.button.
|
Ander eienskappe van die event objek
Daar is ook ander eienskappe wat na
die event objek gekopieer word:
altKey, button, buttons, cancelable,
char, charCode, clientX, clientY,
ctrlKey, detail, eventPhase, key,
keyCode, offsetX, offsetY, originalTarget,
screenX, screenY, shiftKey,
toElement, view.
Om toegang tot eienskappe wat nie hierbo gelys is nie te verkry,
kan die event.originalEvent objek gebruik word.
Voorbeeld
Kom ons sal in die div uitdruk - watter sleutels ingedruk is:
<input id="test" value="tiets iets">
<div id="text"></div>
$('#test').on('keydown', function(event) {
$('#text').html(event.type + ": " + event.which);
});
Voorbeeld
Kom ons sal in die div uitdruk - op watter tag ons kliek:
<body>
<div id="text"></div>
<div>
<p>
<strong><span>kliek</span></strong>
</p>
</div>
</body>
span, strong, p {
display: block;
padding: 10px;
border: 1px solid black;
}
$('body').click(function(event) {
$('#text').html('gekliek: ' + event.target.nodeName);
});
Sien ook
-
die metode
on,
wat dit moontlik maak om 'n gebeurtenishandler aan 'n element te bind -
die metode
trigger,
wat dit moontlik maak om alle gebeurtenishandlers, gebind aan die element, vir gebeurtenisse van die gespesifiseerde tipe te aktiveer -
die metode
triggerHandler,
wat dit moontlik maak om alle gebeurtenishandlers, gebind aan die element, te aktiveer - jQuery-gebeurtenisse