Jednokratni događaj u jQuery
Kada smo proučavali odvajanje događaja
pomoću metode
off,
koristili smo sledeću konstrukciju:
$('li').on('click', function() {
$(this).append('!');
$(this).off('click', func);
});
Prvo smo priključivali funkciju-rukovalac
pomoću on,
zatim odvajali pomoću off.
U jQuery postoji pogodan metod
one,
koji omogućava da se veže jednokratni događaj -
on će se izvršiti samo jednom, a
zatim će se automatski odvojiti. Ovaj metod
prvi parametar prima tip događaja,
a drugi - pridruženu funkciju.
Sledeći primer ćemo razmotriti na osnovu doledate HTML koda:
<ul>
<li>text</li>
<li>text</li>
<li>text</li>
</ul>
CSS kod izgleda ovako:
li {
width: 100px;
cursor: pointer;
}
Sada svakoj li pridružujemo
jednokratni događaj:
$('li').one('click', function() {
$(this).append('!');
});
Kliknite na stavke
lista. Kao što vidite, dobili smo isti efekat, zahvaljujući
metodu one.
Pridružite svim linkovima događaj - pri
prelasku miša preko linka na kraj njegovog teksta
dopisuje se njen href u oblim
zagradama. Nakon prvog prelaska miša preko linka
treba odvojiti od njega događaj, koji
dodaje href na kraj teksta.
Za sve input elemente uradite tako da
ispisuju svoju value pri
kliku na bilo koji od njih, ali samo pri
prvom kliku. Ponovni klik na
input ne bi trebao da izazove reakciju.
Data su paragrafi sa brojevima. Klikom na paragraf u njemu treba da se pojavi kvadrat broja, koji on sadrži, ali samo pri prvom kliku. Pri dvostrukom kliku na paragraf broj u paragrafu treba da se udvostruči, ali takođe samo prvi put.
Data su paragrafi. Uradite tako da pri prvom
kliku na paragraf njemu na kraj doda '!',
ali samo pri prvom kliku.