Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Высота видимой области окна (https://javascript.ru/forum/misc/13551-vysota-vidimojj-oblasti-okna.html)

Snipe 03.12.2010 00:08

Высота видимой области окна
 
Есть какой-нибудь способ узнать высоту видимой части браузера?
Не разрешение экрана и не высоту боди, а именно высоту видимой части?

В ссылках к вопросу нашел ответ: window.innerHeight

monolithed 03.12.2010 00:30

<script type="text/javascript">
window.onload = function(){
var opera = (navigator.userAgent.toLowerCase().indexOf('opera') > -1),
    html = document.documentElement,
    body = document.body,
    w = document.compatMode=='CSS1Compat' && !opera ? html.clientWidth : body.clientWidth,
    h = document.compatMode=='CSS1Compat' && !opera ? html.clientHeight : body.clientHeight;
    alert("Размер вьюпорта: "+  w +"х"+ h);
};
</script>

рони 03.12.2010 03:49

monolithed,
на всякий случай ))) смотреть в opera
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title></title>
<script type="text/javascript">
window.onload = function(){
var opera = (navigator.userAgent.toLowerCase().indexOf('opera') > -1),
    html = document.documentElement,
    body = document.body,
    w = document.compatMode=='CSS1Compat' && !opera ? html.clientWidth : body.clientWidth,
    h = document.compatMode=='CSS1Compat' && !opera ? html.clientHeight : body.clientHeight;
    alert("Размер вьюпорта: "+  w +"х"+ h);
};
</script>
</head>
<body>
</body>
</html>

с дополнением для оперы
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title></title>
<script type="text/javascript">
window.onload = function(){
var html = document.documentElement,
    body = document.body,
    w = document.compatMode=='CSS1Compat' && !window.opera ? html.clientWidth : body.clientWidth,
    h = document.compatMode=='CSS1Compat' && !window.opera ? html.clientHeight : body.clientHeight;
    if (document.compatMode == "CSS1Compat" && window.opera) {
        w = window.innerWidth;
        h = window.innerHeight
    }
    alert("Размер вьюпорта: "+  w +"х"+ h);
};
</script>
</head>
<body>
</body>
</html>

Вариант Kolyaj
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title></title>
<script type="text/javascript">
function getRootElement(doc) {
    doc = doc || document;
    return doc.compatMode == 'CSS1Compat' ? doc.documentElement : doc.body;
}
function getViewportSize(doc) {
    doc = doc || document;
    var elem = getRootElement(doc);
    return [elem.clientWidth, elem.clientHeight];
}

window.onload = function(){

    alert("Размер вьюпорта: "+  getViewportSize()[0] +"х"+ getViewportSize()[1]);
};
</script>
</head>
<body>
</body>
</html>

monolithed 03.12.2010 08:40

Точно рони, не мог вспомнить...

Ну вот так-то горадо проще:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
function getViewportSize(doc) {
    doc = doc || document;
    var elem  = doc.compatMode == 'CSS1Compat' ? doc.documentElement : doc.body;
    return [elem.clientWidth, elem.clientHeight];
}

window.onload = function(){
    alert("Размер вьюпорта: "+  getViewportSize()[0] +"х"+ getViewportSize()[1]);
};
</script>
</head>
<body>
</body>
</html>


Часовой пояс GMT +3, время: 23:06.