Colocar um evento Click em uma tag achor em html de javascript?
-
03-07-2019 - |
Pergunta
Alguém pode ajudar, parece que estou tendo problemas ao colocar um evento onclick de uma tag âncora, ele funciona em uma imagem.eu tenho isto
this.whereAreWe = document.getElementById('where_are_we');
this.whereAreWe.onclick = this.whereAreWe;
Coloquei uma tag A usando o id de "where_are_we" ...
mas nunca executa..se eu mudar para uma imagem, funciona ..
Eu também coloquei o href="#"
Há algo especial nas tags âncora e na aplicação do onclick via código?
Também tentei remover o href. Se eu remover o href, ele não mostra o ícone da mãozinha.
Coloquei um breakpoint na função e com imagem ele entra mas usando a âncora não entra
Alguma ideia?
Solução
Eu também tentei remover a href, se eu remover a href não me mostrar o ícone mãozinha.
Você precisa o atributo 'href' para o 'a' tag, a fim de especificar o URL do documento de destino ou recurso web. No caso de você não especificá-lo - mouseover não altera o cursor. Claro que você pode usar CSS para modificar isso, mas essa é uma questão diferente.
Outras dicas
O código que você forneceu é confuso. O código a seguir funciona corretamente para mim:
<a href="#" id="whereWeAre">a link</a>
<script type="text/javascript">
var whereWeAre = document.getElementById("whereWeAre");
function testClick() {
alert("You clicked!");
}
whereWeAre.onclick = testClick;
</script>
Se o seu exemplo foi um pouco mais específico que provavelmente poderia ser mais útil.
Existem 2 problemas com seu javascript.O uso de "this" e a ligação do evento onclick de volta à referência do elemento DOM para o HREF.Em vez disso, tente isto:
var whereAreWe = document.getElementById("where_are_we");
whereAreWe.onclick = function(){
alert("Click event on Where are We");
return false;
};