Metod on
Metod on omogućava dodavanje ručilaca
dogadaja elementu. Da biste uklonili ručilac
možete koristiti metod
off,
da bi se događaj desio samo jednom, a zatim
da se ručilac sam ukloni - koristite metod
one.
Elementi kojima vezujemo ručilac moraju
postojati u vreme poziva on.
Sintaksa
Ovako dodajemo ručilac događaja elementu,
kao prvi parametar u vidu stringa prosleđuje se
jedan ili više događaja odvojenih razmakom, drugim
parametrom prosleđujemo dodatni selektor za filtriranje
potomaka unutar elementa, trećim - dodatne
podatke, koji se prosleđuju ručilcu u svojstvu
event.data
pri aktiviranju događaja. Drugi i treći parametri
nisu obavezni. Četvrtim prosleđujemo funkciju-ručilac,
u koju se prosleđuje objekat događaja i neobavezni
dodatni parametri. Ako umesto funkcije-ručilca
prosledite false, onda funkcija jednostavno vraća false:
$(selektor).on(dogadjaji, [selektor], [podaci], funkcija-ručilac(objekat događaja, [dodatni parametri]));
Možete koristiti metod on drugačije,
tada se u prvi parametar prosleđuje
objekat JavaScript, gde su ključevi - tip događaja, a
vrednosti - funkcije-ručilci, koje se pozivaju
za događaje:
$(selektor).on({'tip događaja': handler}, [selektor], [podaci]);
Ako ne prosledimo dodatni selektor, onda se događaj aktivira na elementu kome smo pričvrstili ručilac, u suprotnom - na elementu-potomku koji odgovara tom selektoru (delegirani događaji). Isti ručilac događaja može biti vezan za element više puta.
Primer
Hajde da u alert,
prikažemo tekst paragrafa sa #test pri
kliku na njega, klikovi na druge paragrafe ne dovode do
ničega:
<p>text1</p>
<p id="test">text2</p>
<p>text3</p>
$('#test').on('click', function() {
alert( $(this).text() );
});
Primer
Hajde da pri kliku na paragraf prikažemo podatke koje
smo prosledili metodu on. Koristimo
funkciju-ručilac testFunc,
koju smo kreirali:
<p>click</p>
function testFunc(event) {
alert(event.data.text);
}
$('p').on('click', {text: 'aaa'}, testFunc);
Vidi još
-
metod
off,
koji omogućava uklanjanje ručilaca događaja elementa -
metod
one,
koji omogućava da se događaj desi jednom, a zatim automatski ukloni ručilac -
objekat
event,
koji sadrži informaciju o događaju -
metod
trigger,
koji omogućava pokretanje svih ručilaca događaja, pričvršćenih za element za događaje zadatog tipa -
JavaScript metod
bind,
koji omogućava vezivanje konteksta za funkciju