Разрешение экрана можно узнать так:
var swidth=0; var sheight=0; if (self.screen) { // for NN4 and IE4 swidth = screen.width; sheight = screen.height } else if (self.java) { // for NN3 with enabled Java var jkit = java.awt.Toolkit.getDefaultToolkit(); var scrsize = jkit.getScreenSize(); swidth = scrsize.width; sheight = scrsize.height; }
Также могут быть важны переменные screen.availWidth и screen.availHeight, дающие размер свободной области экрана (без панели задач и других панелей, постоянно занимающих место на экране, например, панели MS Office или ICQ).
Hо для вопросов, связанных с дизайном и версткой сайтов, гораздо важнее знать реальный внутренний размер окна браузера, доступный для отображения HTML-странички. Он может быть намного меньше размеров экрана, если браузер открыт не в максимизированном окне, если в браузере применяются боковые панели, если страничка открыта во фрейме и т.п.
Внутренний размер окна браузера можно узнать так:
var wwidth=(window.innerWidth)?window.innerWidth: ((document.all)?document.body.offsetWidth:null); var wheight=(window.innerHeight)?window.innerHeight: ((document.all)?document.body.offsetHeight:null);
Правда, к сожалению, в IE этот код работает только после того, как браузер дойдет до тега <body>. Поэтому данный код можно применять только в скриптах, выполняемых ниже <body> или в скриптах, выполняемых при возникновении тех или иных событий (наведение мышкой или нажатие на ссылку, отправка формы и т.п.).
Переменная
var colors=(screen.colorDepth)?screen.colorDepth:screen.pixelDepth;
даст вам режим отображения цветов:
4 - 16-цветный режим VGA/SVGA
8 - 256-цветный режим Indexed Color
15/16 - режим High Color (32 или 64 градации красного, зеленого и синего).
24/32 - режим True Color (256 градаций каждого основного цвета)