2009-07-04 6 views

Répondre

3

Un regard rapide avec Firebug révèle que oui, en effet, il y a un DOM et un objet de document. Par exemple, javascript:alert(document.title) dans la barre d'adresse donne "logo.gif (Image GIF, 276x110 pixels)". Ceci résulte de la construction du document suivant par le navigateur:

<html> 
    <head> 
     <title>logo.gif (GIF Image, 276x110 pixels)</title> 
    </head> 
    <body> 
     <img src="http://www.google.com/intl/en_ALL/images/logo.gif" alt="http://www.google.com/intl/en_ALL/images/logo.gif"/> 
    </body> 
</html> 

Ceci est également vrai dans Chrome (avec une chaîne légèrement différente pour le titre); le HTML est

<html> 
    <body style="margin: 0px;"> 
     <img style="-webkit-user-select: none" src="http://www.google.com/intl/en_ALL/images/logo.gif"> 
    </body> 
</html> 

Dans IE, il semble que document.title est vide, mais javascript:alert(document.body.clientWidth) donne un résultat égal à la zone client du navigateur, il semble qu'il y ait un DOM là aussi. Le code HTML est le suivant:

<html> 
    <head> 
     <title></title> 
    </head> 
    <body> 
     <img src="http://www.google.com/intl/en_ALL/images/logo.gif" complete="complete"/> 
    </body> 
</html> 
+0

Cela dépend extrêmement de l'implémentation. En interne, certains navigateurs vont créer une fausse page HTML qui affichera l'image, mais vous ne pouvez pas compter sur cela. –

+0

Si par "certains" vous voulez dire "tous" ... (OK, je n'ai pas testé Presto, mais nous avons Gecko, WebKit et Trident représentés ici, c'est un pari assez sûr.) – Domenic

+0

Vous avez raison que vous ne devrait pas compter dessus, cependant; c'est facilement le genre de choses qui pourraient être changées dans une version ultérieure. – Domenic

0

pas ... le navigateur agit simplement comme une visionneuse d'image

+0

mais 'alert()' fonctionne ... – Joe

+0

duh ... Qu'est-ce que cela a à voir avec un DOM? –

1

Cela dépend du navigateur. Si vous allez à cette URL dans Firefox, par exemple, et ouvrez l'inspecteur DOM, vous verrez un tag html, body et img; En outre, en tapant javascript:alert(document) dans la barre d'adresse, vous alertez [object ImageDocument]. IE8 présente un comportement similaire (mais alerte seulement [object]).

Questions connexes