Je cherche à créer une fonction qui permettrai d'afficher tous/toutes les attributs/propriétés (je ne connaît pas le mot exact) d'un document. J'ai essayé avec le code suivant:
Cela ne m'affiche que les attributs/propriétés de l'objet 'window', le bout de code récursif est bien exécuté (affichage des <hr>) mais les attributs/propriétés des sous-éléments ne sont pas affichés.
<script language="Javascript">
function affiche(prop)
{
for(elem in prop)
{
elems=prop+"."+elem;
document.write(elems+"
");
affiche(elems);
}
document.write("<hr>");
}
</script>
</html>
Le problème c'est qu'ici prop est interprèté comme '[object]' et nom pas comme 'window' lors du premier passage dans la boucle.
Le but du code est d'afficher dans une page toutes les propriétés d'un objet ('window' dans ce cas), et d'ensuite afficher toutes les propriétés des propriétés: les propriétés de 'window.onbeforeunload', 'window.onafterprint', 'window.top' ... et ainsi de suite jusqu'au bout (il doit y en avoir des centaines qui dépendent du navigateur je crois).
Je voudrai pour cela employer une fonction récursive car javascript supporte cela.