One metodi

one metodi elementa ýagdaýy gaýtadan işleýji funksiýany goşmaga mümkinçilik berýär. Ýagdaý bir gezek işlenenden soň - gaýtadan işleýji funksiýa awtomatik ýok ediler.

Sintaksis

Biz elementa ýagdaýy gaýtadan işleýji funksiýany şeýle birikdirýäris, birinji parametr hökmünde setir görnüşinde bir ýa-da birnäçe boşluk bilen bölünen ýagdaýlar geçirilýär, ikinjisi - JavaScript obyekti görnüşinde maglumat geçirilýär, olar ýagdaý işlenende event.data häsyyatyna gaýtadan işleýji funksiýa geçirilýär. Ikinji parametr hökmany däl. Üçünjüsi bolsa funksiýa-gaýtadan işleýji geçirilýär, ona ýagdaý obyekti geçirilýär ýa-da false geçirilýär:

javascript$(selektor).one(ýagdaýlar, [maglumat], funksiýa-gaýtadan_işleýji(ýagdaý obýekti));

Ikinji parametr hökmünde element içindäki mirasçylary süzüjilik edýän goşmaça selektor geçirip bolýar, üçünjisi - ýagdaý işlenende event.data häsyyatyna gaýtadan işleýji funksiýa geçirilýän goşmaça maglumatlar geçirilýär. Ikinji we üçünji parametrler hökmany däl. Dördünjisi bolsa funksiýa-gaýtadan işleýji geçirilýär, ona ýagdaý obýekti we hökmany däl goşmaça parametrler geçirilýär. Eger funksiýa-gaýtadan işleýji ýerine false geçirilse, onda funksiýa diňe false gaýtarar:

javascript$(selektor).one(ýagdaýlar, [selektor], [maglumat], funksiýa-gaýtadan_işleýji(ýagdaý obýekti));

one metodyna başga ýol bilen hem ýüz tutup bolýar, onda birinji parametr hökmünde JavaScript obýekti geçirilýär, ýeri düwünleri - ýagdaýyň görnüşi, bahalary bolsa elemente goşan funksiýa-gaýtadan işleýjimiz:

javascript$(selektor).one({'ýagdaýyň görnüşi': handler}, [selektor], [maglumat]);

Eger biz goşmaça selektor geçirmesek, onda ýagdaý, gaýtadan işleýjini birikdirýän elementimizde işlenýär, ýok bolsa - şu selektora gabat gelýän mirasçy elementde işlenýär (wekalatly ýagdaýlar).

Mysal

Absaza basylanda, biz one metodyna geçiren maglumatlary çykaryş etdirmeli. Indiki basylyşlarda hiç zat bolmaz. Biz döreden testFunc funksiýa-gaýtadan işleýjimizden peýdalanyň:

html<p>bas</p>
javascriptfunction testFunc(event) {
  alert(event.data.text);
}

$('p').one('click', {text: 'aaa' }, testFunc);

Şeýle-de serediň

  • on metodi,
    elementa ýagdaýy gaýtadan işleýji funksiýany birikdirmäge mümkinçilik berýär
  • off metodi,
    elementdäki ýagdaýy gaýtadan işleýji funksiýany ýok etmäge mümkinçilik berýär
  • event obýekti,
    ýagdaý barada maglumat saklaýar