Динамическое определение разрешения монитора

Недавно гражданин И. спросил нас о том, как заставить браузер пользователя загружать ту или иную версию страницы в зависимости от того, какое установлено экранное разрешение у этого пользователя. Пробуем ответить...

Для этой цели можно использовать небольшой Java-скрипт. Главная задача - это определить разрешение, а что после этого делать (вывести сообщение или перейти на другую страницу) - дело десятое. В общем случае принцип таков: сначала загружается страница-бланк, содержащая скрипт (ее также можно параллельно использовать для динамического определения браузера), затем автоматически осуществляется переход на соответствующую страницу, в зависимости от выполнения тех или иных условий.

<html>

<body>

 

<script language="JavaScript">

<!--

// Сначала определяем разрешение

if (self.screen) { // для браузеров 4-тых версий

width = screen.width

height = screen.height

}

else if (self.java) { // для NN3 (enabled Java)

var jkit = java.awt.Toolkit.getDefaultToolkit();

var scrsize = jkit.getScreenSize(); 

width = scrsize.width; 

height = scrsize.height; 

}else{

width = height = 'x' // для прочих браузеров

}

// Теперь выполняем нужное действие

if (width == 640) {

location.href='480x640/index.html' }

else if (width == 800) {

location.href='600x800/index.html' }

else if (width == 1024) {

location.href='768x1024/index.html' }

else if (width == 1280) {

location.href='hi-resolution/index.html' }

else {

location.href='default_resolution/index.html' }

//-->

</script>

 

</body>

</html>

Если вам не лень делать более одной версии страниц, можно использовать подобный HTML-код в качестве дефолтовой страницы вашего сайта. Во избежание проблем с браузерами, не поддерживающими JavaScript, в контейнер <HEAD> можно добавить мета-инструкцию переадресации:

<META HTTP-EQUIV=REFRESH CONTENT="2; 

URL=default_resolution/index.html">

<!-- Если в течении 2 секунд браузер не выполнит наш 

скрипт, то произойдет принудительный переход

 на указанную страницу -->

Вот и все.




Рекомендуем почитать

 

Добавить комментарий


Ваше имя:


Комментарий:


Введите: Картинка