I have a little problem with JavaScript, to get the screen width we use screen.width which returns the overall screen resolution, is there a command to get the resolution of the visible portion of the browser, like when the browser is not maximized?
            Asked
            
        
        
            Active
            
        
            Viewed 2.3k times
        
    3 Answers
32
            function width(){
   return window.innerWidth 
       || document.documentElement.clientWidth 
       || document.body.clientWidth 
       || 0;
}
function height(){
   return window.innerHeight 
       || document.documentElement.clientHeight 
       || document.body.clientHeight 
       || 0;
}
Use them to return the height() or width() of the visible window.
 
    
    
        JCOC611
        
- 19,111
- 14
- 69
- 90
- 
                    Thank you sir, window.innerWidth and window.innerHeight is what I want, it just works! but why all the other code? – med Feb 13 '11 at 22:30
- 
                    1@JCOC No need to write the window.innerWidth twice by using the ternary operator. Just use ||: `return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth || 0;` – Šime Vidas Feb 13 '11 at 22:36
- 
                    In the original code I checked if `window.innerWidth` was a number, but I was too lazy to convert it from my framework to plain JS. – JCOC611 Feb 13 '11 at 22:37
- 
                    Cleaner I guess, but it does exactly the same. – JCOC611 Feb 13 '11 at 22:54
1
            
            
        I saw that the question was answered, but here is the code I used with an image to ilustrate.
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());
});
 
    
    
        madaaah
        
- 84
- 5
1
            
            
        The area you're describing is the viewport, and can typically be accessed by using window.innerWidth or window.innerHeight in modern browsers. IE6 is a bit different, but more information on handling the viewport width for all browsers can be found in this tutorial on obtaining viewport size.
 
    
    
        NT3RP
        
- 15,262
- 9
- 61
- 97
 
    