jQuery да off методу
on
орқали богланган вокеаларни боглаб олиш
off
методи ёрдамида амалга оширилади.
Биринчи параметр сифатида у вокеа турини
(масалан, 'click') қабул қилади, иккинчисида эса
боглаб олиш керак бўлган функция номини.
Куйидаги мисолни кўриб чикайлик. Бизда HTML коди бор дейлик:
<ul>
<li>text</li>
<li>text</li>
<li>text</li>
</ul>
CSS да li теги учун стиль кўрсатилган:
li {
width: 100px;
cursor: pointer;
}
Келинг, li устига биринчи бор клик қилинганда,
ундан вокеа богланиши очилиб қўйилсин:
$('li').on('click', function() {
$(this).append('!');
$(this).off('click', func);
});
Руйхат пунктларини босинг. Сиз ку́расизки, хар бир пунктни такрорланган босилишида
ҳеч нарса бўлмайди, чунки
бизнинг func функциямиз
append
методи бажарилганидан сўнг
off методи орқали богланиб олинган.
Барча ҳаволаларга вокеа богланг -
ҳавола устига чиқилганда унинг матнининг охирига
унинг href айлана ичида
қўшилади. Ҳавола устига биринчи марта чиқилгандан сўнг
ундан href ни матн охирига қўшувчи
вокеани боглаб олиш керак.
Барча инпутлар учун шундай қилингки, улар
ўзларининг value сини
ҳар қандай бири босилганда чиқарсин, лекин фақат биринчи босилишда.
Инпутни такрорланган босилиши реакцияни келтириб чиқармаслиги керак.
Сонлар билан абзацлар берилган. Абзац устига клик қилинганда унда ўз ичидаги соннинг квадрати пайдо бўлсин, лекин фақат биринчи кликда. Абзац устига икки марта клик қилинганда эса абзацдаги сон икки баробарга оширилсин, лекин ўша ham биринчи мартада.