Método off no jQuery
Desvincular eventos, que foram vinculados através do método
on,
é feito usando o método
off.
Seu primeiro parâmetro é o tipo de evento
(por exemplo, 'click'), e o segundo é o nome
da função que deve ser desvinculada.
Vamos considerar o seguinte exemplo. Suponha que temos o seguinte código HTML:
<ul>
<li>texto</li>
<li>texto</li>
<li>texto</li>
</ul>
No CSS, o estilo para a tag li está definido:
li {
width: 100px;
cursor: pointer;
}
Vamos fazer com que após o primeiro
clique em um li, o evento seja
desvinculado dele:
$('li').on('click', function() {
$(this).append('!');
$(this).off('click', func);
});
Clique nos itens da lista. Você verá que ao clicar novamente
no mesmo item da lista nada acontece, pois
nossa função func após executar o método
append
é desvinculada pelo método off.
Vincule a todos os links um evento - ao
passar o mouse sobre o link, seu href
deve ser adicionado entre parênteses no final
de seu texto. Após a primeira vez que o mouse
passar sobre o link, o evento que adiciona
o href ao final do texto deve ser
desvinculado.
Para todos os inputs, faça com que eles
exibam seu próprio value quando
qualquer um deles for clicado, mas apenas na
primeira vez. Um segundo clique no
input não deve causar nenhuma reação.
Fornecidos parágrafos com números. Ao clicar em um parágrafo, deve aparecer nele o quadrado do número que ele contém, mas apenas no primeiro clique. No duplo clique no parágrafo, o número no parágrafo deve dobrar, mas também apenas na primeira vez.