Ngjarja e vetme në jQuery

Kur kemi studiuar çlidhjen e ngjarjeve me ndihmën e metodës off, kemi përdorur konstruktin e mëposhtëm:

javascript$('li').on('click', function() {
  $(this).append('!');
  $(this).off('click', func);
});

Fillimisht ne lidhnim funksionin-përpunues me ndihmën e on, pastaj e çlidhnim me ndihmën e off.

Në jQuery ekziston një metodë e përshtatshme one, e cila lejon lidhjen e një ngjarjeje një herëshe - ajo do të ekzekutohet vetëm një herë, dhe pastaj do të çlidhet automatikisht. Kjo metodë si parametër të parë pranon llojin e ngjarjes, ndërsa si të dytë - funksionin e lidhur.

Shembullin e ardhshëm do ta shqyrtojmë në bazë të kodit HTML më poshtë:

html<ul>
  <li>text</li>
  <li>text</li>
  <li>text</li>
</ul>

Kodi CSS duket kështu:

cssli {
  width: 100px;
  cursor: pointer;
}

Tani për çdo li lidhim ngjarjen një herëshe:

javascript$('li').one('click', function() {
  $(this).append('!');
});

Klikoni në pikat e listës. Siç e shihni, ne kemi marrë të njëjtin efekt, fal metodës one.

Задание 1

Lidhini të gjitha lidhjeve ngjarjen - kur kursori vihet mbi lidhjen në fund të tekstit të saj shtohet href i saj në kllapa të rrumbullakëta. Pas vendosjes së parë të kursorit mbi lidhjen duhet të çlihet prej saj ngjarja, e cila shton href në fund të tekstit.

Задание 2

Për të gjitha fushat e teksti bëni që ato të shfaqin value të tyre kur shtypet në cilindo prej tyre, por vetëm në shtypjen e parë. Shtypja e dytë në fushën e tekstit nuk duhet të shkaktojë reaksion.

Задание 3

Janë dhënë paragrafë me numra. Me klikim në paragraf në të duhet të shfaqet katrori i numrit, që ai përmban, por vetëm në klikimin e parë. Me klikim të dyfishtë në paragraf numri në paragraf duhet të dyfishohet, por gjithashtu vetëm herën e parë.

Задание 4

Janë dhënë paragrafë. Bëni që me klikimin e parë në paragraf në fund të tij të shtohet '!', por vetëm në klikimin e parë.