Metoden off i jQuery
Fravendelse af events, som er tilknyttet via
on,
udføres ved hjælp af metoden
off.
Den tager event-typen som første parameter
(f.eks. 'click'), og som andet parameter - navnet på
funktionen, der skal frakobles.
Lad os overveje følgende eksempel. Antag, at vi har HTML-koden:
<ul>
<li>text</li>
<li>text</li>
<li>text</li>
</ul>
I CSS er der angivet en stil til li-tagget:
li {
width: 100px;
cursor: pointer;
}
Lad os gøre sådan, at efter det første
klik på li, bliver eventet fra
den frakoblet:
$('li').on('click', function() {
$(this).append('!');
$(this).off('click', func);
});
Tryk på punkterne på listen. Du vil se, at ved gentaget
tryk på det samme listepunkt sker der intet, fordi
vores funktion func efter udførelsen af metoden
append
frakobles med metoden off.
Tildel alle links et event - når
der hoveres over et link, skal dens
href tilføjes i slutningen af dens tekst
i parenteser. Efter den første hover på linket
skal eventet, der
tilføjer href til slutningen af teksten, frakobles.
Gør sådan for alle inputfelter, at de
udskriver deres value ved
et klik på enhver af dem, men kun ved
det første tryk. Gentaget tryk på
inputfeltet skal ikke udløse nogen reaktion.
Der er givet afsnit med tal. Ved klik på et afsnit skal kvadratet på tallet, som det indeholder, vises i det, men kun ved første klik. Ved dobbeltklik på et afsnit skal tallet i afsnittet fordobles, men også kun første gang.