Array de objetos disparar eventos onclick para outra array de objetos
Boa noite,
Tenho impressão que meu problema é bem simples, mas mesmo assim estou com dificuldades nele e gostaria de ajuda.
tenho uma tag "nav" com várias tag "a" dentro. Sendo que cada uma é relativa a uma tag "img" que está em outra tag "section". Não posso mudar o html paraficar tudo no mesmo local e usar "this", tenho que trabalhar com o que tenho. O que eu gostaria é que quando clicassemos, por exemplo, no terceio "a" fosse disparado um evento que interaja com a terceira "img". Ou seja, algo assim:
>
//arrays de objetos
var links = document.getElementById("ID_DA_NAV").getElementsByTagName("a");
var fotos = document.getElementById("ID_DA_SECTION").getElementsByTagName("img");
//exemplo de funcao
function minha_funcao () {
alert(i);
}
//evento de clique
for(i = 0; i <= links.length-1; i++){
links*.addEventListener("click", minha_funcao, false);*
}
O problema é que por algum motivo na função ele interpreta o "i" sempre como sendo o último contador e não o contator "i" do elemnto clicado. Ou seja o resultado do script acima é que iria aparecer o valor de "fotos.length" na alert e não o valor do contador "i".
Talvez com jQuery fosse mais fácil, mas estou realmente querendo me aprofundar no js e ser capaz de fazer tudo com ou sem jQuery.
Alguém têm alguma solução?
Obrigado,
Discussão (4)
Carregando comentários...