2011-02-13 3 views
9

J'ai un petit problème avec JavaScript, pour obtenir la largeur de l'écran, nous utilisons screen.width qui renvoie la résolution globale de l'écran, y at-il une commande pour obtenir la résolution de la partie visible du navigateur, quand le navigateur n'est pas maximisé?largeur de l'écran vs partie visible

Répondre

28
function width(){ 
    return window.innerWidth 
     || document.documentElement.clientWidth 
     || document.body.clientWidth 
     || 0; 
} 

function height(){ 
    return window.innerHeight 
     || document.documentElement.clientHeight 
     || document.body.clientHeight 
     || 0; 
} 

Utilisez-les pour retourner le height() ou width() de la fenêtre visible.

JSFiddle example.

+0

Merci monsieur, window.innerWidth et window.innerHeight est ce que je veux, ça fonctionne! mais pourquoi tous les autres codes? – med

+0

Compatibilité du navigateur. Oh, si c'est ce que vous vouliez, allez-y et marquez-le comme accepté. – JCOC611

+3

@med Pour IE évidemment ':)' –

0

La zone que vous décrivez est la fenêtre, et peuvent généralement être consultées en utilisant window.innerWidth ou window.innerHeight dans les navigateurs modernes. IE6 est un peu différent, mais plus d'informations sur la gestion de la largeur de la fenêtre d'affichage pour tous les navigateurs peuvent être trouvés dans this tutorial on obtaining viewport size.

1

J'ai vu que la question a été répondue, mais voici le code que j'ai utilisé avec une image pour l'illustrer.

function height(){ 
return(window.innerHeight)? 
window.innerHeight: 
document.documentElement.clientHeight||document.body.clientHeight||0; 
} 
$(document).ready(function(){ 
$('.first, .second').css('height',height()); 
}); 
$(window).resize(function() { 
$('.first, .second').css('height',height()); 
}); 

JSFiddle Example

Questions connexes