<a href="javascript:void(0)" id="loginlink">login</a>
I'já vi tais href
s muitas vezes, mas não sei exatamente o que isso significa.
O operador 'void' avalia o expressão e depois retorna "indefinido".
O operador "void" é frequentemente utilizado apenas para obter o primitivo "definido valor, geralmente utilizando "void(0)
" (que é equivalente a "void 0
"). Nesses casos, a variável global `infinida' pode ser usado em seu lugar (assumindo que tenha não foi atribuído a um não-defaltado valor).
Uma explicação é dada aqui: operador 'void'.
A razão pela qual você quer fazer isso com o href' de um link é que normalmente, um
javascript:URL irá redirecionar o navegador para uma versão em texto puro do resultado da avaliação desse JavaScript. Mas se o resultado for
infinido', então o navegador permanece na mesma página. O void(0)
é apenas um script curto e simples que avalia para `undefined'.
Significa que não vai fazer nada. É uma tentativa de ter a ligação não "navegar" em lado nenhum. Mas não é o caminho certo.
Na verdade, você deve apenas "voltar falso" no evento "clique", assim:
<a href="#" onclick="return false;">hello</a>
Normalmente é usado se o link estiver fazendo alguma coisa 'JavaScript-y'. Como postar um formulário AJAX, ou trocar uma imagem, ou o que quer que seja. Nesse caso, você apenas faz qualquer função que esteja sendo chamada return false
.
Para tornar o seu site completamente impressionante, no entanto, geralmente você incluirá um link que faça a mesma ação, se a pessoa que estiver navegando optar por não executar o JavaScript.
<a href="backup_page_displaying_image.aspx"
onclick="return coolImageDisplayFunction();">hello</a>
Você deve ter sempre um href nas suas etiquetas **a***. Chamando uma função JavaScript que retorna 'indefinido' servirá muito bem. Assim como a ligação para '#'.
As etiquetas de âncora em Internet Explorer 6 sem um href não se aplica o estilo a:hover
.
Sim, é terrível e um crime menor contra a humanidade, mas também é Internet Explorer 6 em geral.
Espero que isto ajude.
Internet Explorer 6 é na verdade um grande crime contra a humanidade.