Bonsoir tous/toutes,
Je viens de remarquer un phénomène étrange, un phénomène au limite, qui peut tout à fait se produire, et pas seulement occasionelement : dans certains cas, innerHTML peut renvoyer ce qu'aurait renvoyé outerHTML.
Ce n'est pas un phénomène mysthérieux dut à une quelconque courbure de l'espace temps, mais un phénomène qui se produit tout simplement quand l'élément sur lequel on applique innerHTML n'a pas de contenu.
Dans les cas ou un élément surlequel on applique innerHTML est succeptible d'avoir un contenu strictement vide, alors il est préférable de faire plutôt
Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 var content; var element; element = ...; content = element.innerHTML; if (content == element.outerHTML) content = "";
La comparaison avec element.outerHTML est obligatoire, car on ne peut bien sûre pas tester un innerHTML vide, puisque celui-ci renvois alors outerHTML qui n'est pas vide.
Je constate ce phénomène avec des éléments tels que
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part <DIV></DIV>
J'ai vraiment cru rêver... mais c'était bien là la source d'un bug étrange dans une application qui m'embêtait (note: je suis sous IE6).
Partager