Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

charly

[Resolvido] JS - on Click , como?

Mensagens Recomendadas

charly

Boas a todos,

estou a tentar criar um sistema que dê um alerta quando um objecto dentro da página é clicado. Passando a dar o exemplo:

<script type="text/javascript">
var elementO = document.getElementsByClassName("tst");
elementO.onclick = function() {alert('Produto Adicionado.');};
</script>


<div id="teste" class="tst" style="width: 100px; height: 100px; background: green;"></div>

Mas reparo que se clicar não faz nada, mas na consola do Chrome se eu chamar a variável elementO apresenta-me o seu conteúdo como sendo "function() {alert('Produto Adicionado.');};" em vez de a executar.

Alguém me pode dar uma ajuda.

(Podia usar jQuery no qual tenho esse sistema a funcionar com uma facilidade incrível mas o problema é a incompatibilidade entre o Jquery e o Mootools na mesma página, está a causar problemas)

Editado por brunoais
geshi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
brunoais

O problema aí é muito simples.

Estás a procurar pelo elemento com o id "teste" antes de ele existir

Basta trocares a ordem dessas 2 tags e o problema fica resolvido (para esse caso específico).


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
charly

Bem, eu testei ... mas mesmo assim não faz nada. Este mantêm-se estático.

E estou a pesquisar pela Class e não pelo Id, só tenho disponivel para uso final o elemento Class.

<div id="teste" class="tst" style="width: 100px; height: 100px; background: green;"></div>


<script type="text/javascript">
   var elementO = document.getElementsByClassName("tst");
   elementO.onclick = function() {alert('Produto Adicionado.');};
</script>

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
clera

boas,

continua a não funcionar, porque (penso eu) a variável elemento é uma array e não um objecto

por isso se for apenas um objecto podes usar

document.getElementsByClassName("tst")[0].onclick=function() {alert('Produto Adicionado.');};

se forem vários usas um ciclo para os correr a todos ;)

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.