2012-06-27 2 views
0
window.addEventListener("load", run, false); 

function run() { 
    var links = content.document.getElementsByTagName("a"); 
    var x = ""; 
    for (var i = 0; i < links.length; i++) { 
     x = x + "<p>" + links[i] + "</p>"; 
    } 
    document.write(x); 
} 

Je suis nouveau sur JavaScript, et je ne peux pas pour la vie de moi le comprendre.Quel est le problème avec ce morceau de code javascript?

+5

Quelle (s) erreur (s) obtenez-vous? – yoozer8

+2

document.write est utilisé. ne le faites pas à part d'un script en-ligne (exécuté pendant la construction du DOM, mais c'est toujours icky) ou si vous * voulez * vraiment "rouvrir" le document. –

+0

Votre première étape dans la détermination de ce qui ne va pas avec votre code Javascript devrait frapper [votre] (http://msdn.microsoft.com/library/gg589507 (VS.85) .aspx) [navigateur] (https: // développeurs .google.com/chrome-developer-tools /) [développeur] (http://getfirebug.com/) [outils] (http://www.opera.com/dragonfly/). (À tout le moins la console d'erreur, et le débogueur JS) – millimoose

Répondre

3

Retirer contents puisqu'il n'est pas parent du document comme window et je pense qu'il n'y a pas objet content intégré JavaScript (bien qu'il y ait fonction contents() jQuery):

var links = content.document.getElementsByTagName("a"); 
      ------^ 

Ou vous pouvez également obtenir tous liens avec document.links comme:

var links = document.links; 
+1

Il serait utile si vous avez expliqué * pourquoi * 'contenu' devrait être supprimé. – josh3736