Meetod one
Meetod one võimaldab lisada sündmuste
töötleja elemendile. Pärast seda, kui sündmus
töötab üks kord - eemaldatakse töötleja
automaatselt.
Süntaks
Nii kinnitame sündmuste töötleja elemendile,
esimese parameetrina stringina
edastatakse üks või mitu sündmust tühikutega eraldatuna,
teisega - edastame andmed JavaScripti objekti kujul,
mis edastatakse töötlejale omaduses
event.data sündmuse käivitumisel. Teine parameeter
on valikuline. Kolmandana edastame funktsiooni-töötleja,
millele edastatakse sündmuse objekt või edastame false:
$(valija).one(sündmused, [andmed], funktsioon-töötleja(sündmuse objekt));
Võib teise parameetrina edastada täiendava
filtreeriva järelvalija elemendi järeltulijate seas,
kolmandana - täiendavad andmed, mis edastatakse
töötlejale omaduses event.data
sündmuse käivitumisel. Teine ja kolmas parameeter
on valikulised. Neljandana edastame
funktsiooni-töötleja, millele edastatakse sündmuse objekt
ja valikulised täiendavad parameetrid. Kui funktsiooni-töötleja
asemel edastada false, siis funktsioon lihtsalt
tagastab false:
$(valija).one(sündmused, [valija], [andmed], funktsioon-töötleja(sündmuse objekt));
Võib kasutada meetodit one teistmoodi,
siis esimesse parameetrisse edastatakse
JavaScripti objekt, kus võtmed - sündmuse tüüp, ja
väärtused - funktsioon-töötleja, mille me lisasime
elemendile:
$(valija).one({'sündmuse tüüp': handler}, [valija], [andmed]);
Kui me ei edasta täiendavat valijat, siis sündmus käivitub elemendil, millele me kinnitame töötleja, vastasel juhul - järeltulija elemendil, mis vastab sellele valijale (delegeeritud sündmused).
Näide
Klõpsake lõigul, et kuvada andmed, mis
me edastasime meetodisse one. Järgnevatel klõpsudel
midagi ei toimu. Kasutame
funktsiooni-töötlejat testFunc,
mille me lõime:
<p>klõpsa</p>
function testFunc(event) {
alert(event.data.text);
}
$('p').one('click', {text: 'aaa' }, testFunc);