document.getElementsByTagName et window.onload
Bonjour à tous,
J'ai plusieurs problèmes avec la méthode document.getElementsByTagName().
Toutes les balises ne sont pas detectées.
Voici mon document:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<script type="text/javascript">
window.onload = initAll();
function initAll(){
var allP = document.getElementsByTagName("P");
var allImg = document.getElementsByTagName("img");
var allTags = document.getElementsByTagName("*");
var outMsg = "<p>: " + allP.length + " "+ "<img>: " + allImg.length + " " +"tags: " +allTags.length;
alert(outMsg);
}
</script>
</head>
<body>
<p>hey</p>
<br />
<img src="images/Img2_thumb.jpg" width="160" height="120" hspace="10" border="3" alt="Thumbnail 2" id="Img2" />
<br />
<input type="button" onclick="javascript:initAll()" value="Compte"></input>
</body>
</html> |
Lorsque que je lance la page. Les messages d'alertes indiquent trouver 0 balise <p> 0 balise <img> et 3 tags en tout. (je devine qu'il s'agit de html head et body).
En revanche, lorque j'appelle initAll() en appuyant sur le bouton, j'obtiens bien 1 <img> 1 <p> 9 tags en tout.
Je ne comprends pas pourquoi...
De plus, document.images une longueur de 1 quand je l'appelle avec window.onload... alors que document.getElementsByTagName("img") a une longueur de 0.
Merci d'avance !