Подтвердить что ты не робот

Как получить размер окна браузера с помощью Prototype.js?

Как получить размер окна браузера с помощью Prototype.js версии 1.6.0.3?

4b9b3361

Ответ 1

Это мое решение, которое дает те же значения, что и панель инструментов веб-разработчика в Firefox.

var WindowSize = Class.create({
    width: function()
    {
        var myWidth = 0;
        if (typeof(window.innerWidth) == 'number')
        {
            //Non-IE
            myWidth = window.innerWidth;
        }
        else if (document.documentElement && document.documentElement.clientWidth)
        {
            //IE 6+ in 'standards compliant mode'
            myWidth = document.documentElement.clientWidth;
        }
        else if (document.body && document.body.clientWidth)
        {
            //IE 4 compatible
            myWidth = document.body.clientWidth;
        }
        return myWidth;
    },
    height: function()
    {
        var myHeight = 0;
        if (typeof(window.innerHeight) == 'number')
        {
            //Non-IE
            myHeight = window.innerHeight;
        }
        else if (document.documentElement && document.documentElement.clientHeight)
        {
            //IE 6+ in 'standards compliant mode'
            myHeight = document.documentElement.clientHeight;
        }
        else if (document.body && document.body.clientHeight)
        {
            //IE 4 compatible
            myHeight = document.body.clientHeight;
        }
        return myHeight;
    }
});

Ответ 2

В соответствии с API-прототипа :

var viewport = document.viewport.getDimensions(); // Gets the viewport as an object literal
var width = viewport.width; // Usable window width
var height = viewport.height; // Usable window height

Ответ 3

И та же идея, но более компактная:

var WindowSize = Class.create({
    width: window.innerWidth || (window.document.documentElement.clientWidth || window.document.body.clientWidth),
    height: window.innerHeight || (window.document.documentElement.clientHeight || window.document.body.clientHeight)
});

Ответ 4

это работает во всех современных браузерах и ie6 +:

var w = document.documentElement.clientWidth;
var h = document.documentElement.clientHeight;

Требуется правильный Doctype