Event obyekti
event obyekti hadisə baş verdikdə yaradılır
və onun haqqında məlumat ehtiva edir. Hadisə baş verdikdə
event obyekti
handler funksiyasına ötürülür.
Event obyektinin xassələri və metodları
Aşağıdakı cədvəldə event obyektinin
xassələri və metodları və onların təsviri göstərilmişdir:
| Ad | Təsvir |
|---|---|
event.currentTarget |
Hadisənin qalxma mərhələsində cari DOM elementi. Adətən
bu xassə funksiyanın this-inə ekvivalentdir.
|
event.data |
İstəyə bağlı parametr. İcra olunan handleri əlavə edərkən hadisə metoduna ötürülən məlumat obyekti. |
event.delegateTarget |
Yenicə çağırılmış jQuery hadisə handlerinin əlavə edildiyi
element. Bu xassə hadisələr delegasiya edildikdə ən faydalıdır,
handler emal olunan elementin əcdadına bağlandıqda.
Birbaşa elementə bağlanan delegasiya edilməmiş handlerlər üçün
event.delegateTarget dəyəri
event.currentTarget dəyərinə uyğun gəlir.
|
event.isDefaultPrevented |
Metod bu hadisə obyekti üçün
event.preventDefault metodunun
çağırılıb çağırılmadığını yoxlayır.
|
event.isImmediatePropagationStopped |
Metod bu hadisə obyekti üçün
event.stopImmediatePropagation
metodunun çağırılıb çağırılmadığını yoxlayır.
|
event.isPropagationStopped |
Metod bu hadisə obyekti üçün
event.stopPropagation
metodunun çağırılıb çağırılmadığını yoxlayır.
|
event.isPropagationStopped |
Metod bu hadisə obyekti üçün
event.stopPropagation
metodunun çağırılıb çağırılmadığını yoxlayır.
|
event.metaKey |
Metod hadisə baş verdiyi anda
META düyməsinin basılıb basılmadığını
yoxlayır. Platformadan asılı olaraq düymə
fərqli ola bilər. true və ya
false qaytarır.
|
event.namespace |
Hadisə çağırıldığı zaman göstərilən adlar fəzası. Bu xassə istifadə olunan adlar fəzasından asılı olan vəzifələri olan plugin müəllifləri üçün faydalı ola bilər. |
event.pageX |
Sənədin sol kənarına nisbətən siçanın mövqeyini göstərir. |
event.pageY |
Sənədin yuxarı kənarına nisbətən siçanın mövqeyini göstərir. |
event.preventDefault |
Əgər bu metod çağırılıbsa, bu hadisə üçün standart
əmriyyat yerinə yetirilməyəcək. Məsələn, linkə klikləmək
yeni URL-ə keçidə səbəb olmayacaq. Bu metodun çağırılıb
çağırılmadığını yoxlamaq üçün
event.isDefaultPrevented metodundan istifadə edə bilərsiniz.
|
event.relatedTarget |
Varsa, hadisədə iştirak edən digər DOM elementi qaytarır.
mouseout üçün siçanın hansı elementin üzərində olduğunu göstərir,
mouseover üçün siçanın kursorunun hansı elementdən çıxdığını göstərir.
|
event.result |
Baş vermiş hadisənin handleri tərəfindən qaytarılan,
undefined-ə bərabər olmayan sonuncu dəyər.
Bu xassə öz hadisələrinin dəyərlərini əldə etmək üçün faydalı ola bilər.
|
event.stopImmediatePropagation |
Elementlə əlaqəli qalan bütün hadisə handlerlərinin işini ləğv edir
və hadisənin DOM ağacında yuxarı qalxmasının qarşısını alır.
Hadisənin əcdad elementlərə qədər qalxmasının qarşısını almaq,
amma digər hadisə handlerlərinin işinə icazə vermək üçün
event.stopPropagation metodundan istifadə edə bilərsiniz.
Bu hadisə obyekti üçün event.stopImmediatePropagation-ın
çağırılıb çağırılmadığını yoxlamaq üçün
event.isImmediatePropagationStopped metodundan istifadə edin.
|
event.stopPropagation |
Hadisənin DOM ağacında yuxarı qalxmasının qarşısını alır.
Unutmayın ki, digər handlerlər bu element üçün işləməyə davam edəcək.
Bu metod trigger
metodu ilə çağırılan öz hadisələri üçün işləyir.
Bu metodun çağırılıb çağırılmadığını yoxlamaq üçün
event.isPropagationStopped-dan istifadə edin.
|
event.target |
Hadisəni başlatmış DOM elementi. Bu hadisə üçün qeydiyyatdan keçmiş
element və ya onun nəsli ola bilər. Hadisənin qalxmasını müəyyən etmək
üçün event.target və this-i müqayisə etmək çox faydalıdır.
Hadisə delegasiya edildikdə, hadisələr qalxdıqda bu xassə faydalıdır.
|
event.timeStamp |
Brauzer tərəfindən hadisənin yaradılma anı ilə
1 Yanvar 1970-ci il arasındakı millisaniyələ fərq.
Kodda iki zaman anı üçün event.timeStamp dəyərlərinin
fərqini əldə etməklə hadisənin performansını müəyyən etmək üçün
bu xassə faydalı ola bilər. Əgər sadəcə hadisə handleri daxilində
cari vaxtı əldə etmək istəyirsinizsə,
getTime metodundan istifadə edin.
|
event.type |
Bu xassədə hadisənin növü göstərilir. |
event.which |
Bu xassə klaviaturanın və ya siçanın hansı düyməsinin basıldığını göstərir.
Siçan üçün: 1 - sol düymə, 2 - orta düymə (təkər),
3 - sağ düymə.
event.button əvəzinə event.which-dən istifadə edin.
|
Event obyektinin digər xassələri
event obyektinə köçürülən digər xassələr də var:
altKey, button, buttons, cancelable,
char, charCode, clientX, clientY,
ctrlKey, detail, eventPhase, key,
keyCode, offsetX, offsetY, originalTarget,
screenX, screenY, shiftKey,
toElement, view.
Yuxarıda sadalanmayan xassələrə daxil olmaq üçün
event.originalEvent obyektindən istifadə edə bilərsiniz.
Nümunə
Gəlin div-ə hansı düymələrin basıldığını çıxaraq:
<input id="test" value="type something">
<div id="text"></div>
$('#test').on('keydown', function(event) {
$('#text').html(event.type + ": " + event.which);
});
Nümunə
Gəlin div-ə hansı teq-ə klikləyəcəyimizi çıxaraq:
<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);
});
Həmçinin bax
-
metod
on,
elementə hadisə handleri bağlamağa imkan verir -
metod
trigger,
elementə bağlanmış bütün hadisə handlerlərini müəyyən edilmiş tipdəki hadisələr üçün işə salmağa imkan verir -
metod
triggerHandler,
elementə bağlanmış bütün hadisə handlerlərini işə salmağa imkan verir - jQuery hadisələri