Еднократен настан во 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 при
кликнување на кое било од нив, но само при
првото кликнување. Повторно кликнување на
полето за внес не треба да предизвикува реакција.
Дадени се параграфи со броеви. При клик на параграф во него треба да се појави квадрат на бројот, кој го содржи, но само при првиот клик. При двоен клик на параграф бројот во параграфот треба да се удвои, но исто така само првиот пат.
Дадени се параграфи. Направете така што при првиот
клик на параграф на неговиот крај да се додаде '!',
но само при првиот клик.