2009-05-03 10 views
1

J'essaye de trouver la meilleure manière d'estimer la taille maximum de la zone visualisable par navigateur. c'est-à-dire les dimensions de l'écran moins les barres d'outils, signets, etc. Évidemment, cela ne sera pas parfait dans les cas où la fenêtre n'est pas agrandie et parce que les gens utilisent des navigateurs différents - je cherche juste une bonne estimation ici.Bonne façon d'estimer la zone de navigateur disponible

Le but est de déterminer la taille maximale d'une image.

+0

Je suis un peu confus. Quel est le but ici? Essayez-vous de trouver la taille du navigateur en utilisant JavaScript lorsque votre page est consultée, ou en essayant de trouver les dimensions optimales pour votre design? –

+0

Votre "zone visible du navigateur disponible sans barres d'outils, signets, etc." s'appelle la fenêtre d'affichage. :-) Et ce que Samir Talwar a dit. Quel est le but? –

+0

Le but est alors de déterminer la taille maximale d'une image. –

Répondre

3

Vous pouvez également utiliser la fonction jQuery'swidth() sur quoi que ce soit: $(window).width(). Gardez à l'esprit cependant que si la fenêtre est redimensionnée, cela va changer et probablement à travers toute mise en page sur laquelle elle était basée à l'origine. Vous pouvez watch for that event, mais cela pourrait nuire aux performances si vous faites des choses compliquées.

+0

+1 N'oubliez pas que vous pouvez appeler la fonction width() sur n'importe quel sélecteur, ce qui est très utile avec d'autres fonctions telles que height(). Comme ci-dessus la fenêtre * pourrait * être redimensionnée mais généralement l'utilisateur redimensionne la fenêtre en sachant très bien ce qui se passera normalement. –

2

Dans Firefox, vous pouvez utiliser ce code

<html> 

<body> 
<script type="text/javascript"> 
document.write("<p>Width: " + window.innerWidth + "</p>") 
document.write("<p>Height: " + window.innerHeight + "</p>") 
</script> 
</body> 

</html> 

Pour IE, vous pouvez essayer des propriétés document.body.offsetWidth et document.body.offsetHeight.

L'objet de l'écran sera obtenir des propriétés de l'écran (il peut être utile), vérifier ses propriétés ici: link text

+0

-1 pour ne pas avoir trouvé de solution de navigation croisée. – KooiInc

+0

... et pour l'utilisation de document.write – KooiInc

2

Une fonction de navigateur croisé pour déterminer la fenêtre d'affichage. Renvoie un tableau contenant la largeur, la hauteur, la position de gauche et la position supérieure de l'écran du navigateur.

function getViewport() { 
     var iWidth,iHeight,iTop,iLeft, 
      w = window, d = document; 
      iWidth = w.innerWidth || d.documentElement.clientWidth 
        || d.body.clientWidth || 0; 
      iHeight = w.innerHeight || d.documentElement.clientHeight 
        || d.body.clientHeight || 0; 
      iTop = w.pageYOffset || d.body.scrollTop 
        || d.documentElement.scrollTop || 0; 
      iLeft = w.pageXOffset || d.body.scrollLeft 
        || d.documentElement.scrollLeft || 0; 
      return [iWidth,iHeight,iLeft,iTop]; 
} 
Questions connexes