Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
No firefox, amigos, estou tentando capturar todos os links da página, e depois mudar o href deles. Durante o teste, iniciei um FOR e pedi para que, para cada um dos links capturados, ele printasse, ou o objeto inteiro, ou o href dele. O código vem abaixo:
<html>
<head>
<title>Página 1</title>
<script type="text/javascript">
function mudaHREFLinks(){
//esta função deve capturar todos os links da página, verificar se ele possui um docid e se ele não possuir um docid pai. Se ambos forem verdadeiro, ele joga par2 no href do link.
var linksPagina = document.getElementsByTagName('A'); //pega todos os links
var qtdLinksPagina = linksPagina.length; //quantos links são
//document.write(qtdLinksPagina);
for(var i=0; i<qtdLinksPagina; i++){
document.write(linksPagina[i]);
//ou document.write(linksPagina[i].href);
}
}
</script>
</head>
<body onload="mudaHREFLinks();">
<a href="pagina11.html?par1=valor1">Link pagina 1.1</a>
<a href="pagina12.html?par1=valor1">Link pagina 1.2</a>
<a href="pagina13.html?par1=valor1">Link pagina 1.3</a>
</body>
</html>
E somente o primeiro link retorna. Os outros ficam como undefined.
Saberiam me dizer o por que? Estou muito precisando desta resposta!
@EDIT
o que é mais bizarro, é que se eu for manualmente dentro do For e mudar o I document.write(linksPagina[1]);
para 1, por exemplo, ou 2, ele vai mostrar 1 (e só uma vez ¬¬) o objeto ou o link dele. Ele não está navegando entre os objetos deste array. Ele só msotra o primeiro. Que droga é essa?
Abraços!
Carregando comentários...