Bonjour,
Voici un sujet sur le champ d'application de la fonction javascript "textContent".
- Elle est censée permettre la récupération du texte contenu dans un élément HTML et ses descendants.
- Je tombe cependant, via la lecture d'un ouvrage, sur un cas critique : celui où l'élément html est un iframe :
1/ Voici l'iframe :
<iframe src="myFile.html" Id="myFrame"> </iframe>
2/Voici le script utilisant la propriété textContent :
1 2 3 4 5 6 7
| myDiv = document.getElementById('888');
myiFrame = document.getElementById('myFrame');
myBody = myiFrame.contentDocument.body;
myT = myBody.textContent;
setTimeout(function () {alert('Tintin...')}, 2000);
setTimeout(function () {alert(myT)}, 2000); |
- La première boîte de dialogue "alert" affiche correctement "tintin..."
- La seconde devrait afficher le contenu de la variable myT, c'est-à-dire la valeur de la propriété textContent. En fait rien ne s'affiche : la boîte de dialogue est tout simplement vide...
Je n'ai pas d'explication pour l'instant sur ce comportement inattendu...
Bien cordialement
Partager