jQuery-де бір реттік оқиға
Біз
off
әдісін қолданып оқиғаларды босатуды зерттегенде,
біз келесі құрылымды қолдандық:
$('li').on('click', function() {
$(this).append('!');
$(this).off('click', func);
});
Алдымен біз
on
әдісін қолданып функция-өңдегішті бекіттік,
содан кейін off әдісін қолданып босаттық.
jQuery-де
one
әдісі бар,
ол бір реттік оқиғаны байланыстыруға мүмкіндік береді -
ол тек бір рет орындалады,
содан кейін автоматты түрде босатылады. Бұл әдіс
бірінші параметр ретінде оқиға түрін қабылдайды,
ал екіншісі - байланыстырылған функцияны.
Келесі мысалды төменде келтірілген HTML коды негізінде қарастырамыз:
<ul>
<li>text</li>
<li>text</li>
<li>text</li>
</ul>
CSS коды келесідей:
li {
width: 100px;
cursor: pointer;
}
Енді әр li элементіне
бір реттік оқиғаны байланыстырамыз:
$('li').one('click', function() {
$(this).append('!');
});
Тізім элементтерін басып көріңіз.
Көріп отырғаныңыздай, біз
one әдісінің арқасында бірдей әсерге қол жеткіздік.
Барлық сілтемелерге оқиғаны байланыстырыңыз -
сілтемеге курсорды апарып қойған кезде оның мәтінінің соңына
оның href мәні дөңгелек жақша ішінде қосылады.
Сілтемеге бірінші рет курсорды апарып қойғаннан кейін
оған href мәнін мәтін соңына қосылатын оқиғаны босату керек.
Барлық енгізу өрістері үшін олардың
value мәнін кез келген енгізу өрісін басқан кезде шығарып беруін жасаңыз,
бірақ тек бірінші рет басқанда.
Енгізу өрісін қайта басу жауап бермеуі керек.
Сандары бар абзацтар берілген. Абзацты нұққан кезде онда оның қамтитын санының квадраты пайда болуы керек, бірақ тек бірінші рет нұққанда. Абзацты екі рет нұққан кезде абзацтағы сан екі еселенуі керек, бірақ ол да тек бірінші рет.
Абзацтар берілген. Абзацты бірінші рет нұққан кезде
оның соңына '!' қосылатындай етіп жасаңыз,
бірақ тек бірінші рет нұққанда.