Metoden off i jQuery
Att koppla bort händelser som bundits via
on,
görs med metoden
off.
Den tar som första parameter händelsetypen
(till exempel 'click'), och som andra - namnet på
funktionen som ska kopplas bort.
Låt oss titta på följande exempel. Antag att vi har HTML-kod:
<ul>
<li>text</li>
<li>text</li>
<li>text</li>
</ul>
I CSS är stilen för taggen li satt:
li {
width: 100px;
cursor: pointer;
}
Låt oss göra så att efter första
klicket på li, så kopplas händelsen från den
bort:
$('li').on('click', function() {
$(this).append('!');
$(this).off('click', func);
});
Klicka på listpunkterna. Du kommer att se att vid upprepade
klick på samma listpunkt händer ingenting, eftersom
vår funktion func efter utförandet av metoden
append
kopplas bort med metoden off.
Koppla en händelse till alla länkar - vid
hållning över länken ska dess href
läggas till i slutet av dess text inom
runda parenteser. Efter första gången länken hålls över
skall händelsen som
lägger till href i slutet av texten kopplas bort från den.
Gör så att alla input-fält
skriver ut sitt value vid
klick på något av dem, men endast vid
första klicket. Ett upprepat klick på
input-fältet ska inte ge någon reaktion.
Det finns stycken med siffror. Vid klick på ett stycke skall kvadraten på talet som det innehåller visas i det, men endast vid första klicket. Vid dubbelklick på ett stycke ska talet i stycket fördubblas, men också endast första gången.