конструкция не срабатывает корректно - тупиковая ситуация.

Обсуждение вопросов клиентского программирования.

Модератор: Duncon

Ответить
WEB_bobby
Сообщения: 81
Зарегистрирован: 03 фев 2007, 16:59

У меня стоит разрешение 1024*768. Запускаю данный код в любом браузере.
И почему-то при сворачивании окна выводится 'document.body.width > 1024'. И самое интересное что при разворачивании тоже выводиться 'document.body.width > 1024'.
Хотя в обоих случаях должно выводится 'document.body.width <= 1024'.
Пробовал даже(не знаю зачем - наверное от безысходности :) ) проверку
if (document.body.width <= 1024) заменить проверку if (window.width <= 1024) - и это тоже не помогло. Что же здесь не так?

Код: Выделить всё

<html>
<head>

<script lanaguage = "JavaScript">
      window.onresize = function()
      {
            if (document.body.width <= 1024)
            {
	        alert('document.body.width <= 1024'); 			
	    }
            else 
            {
	             alert('document.body.width > 1024'); 			
	    }
      } 
</script>

</head>

<body>
</body>
</html>
WEB_bobby
Сообщения: 81
Зарегистрирован: 03 фев 2007, 16:59

if (screen.width <= 1024) - вот так надо.
Пробовал даже(не знаю зачем - наверное от безысходности ) проверку
if (document.body.width <= 1024) заменить проверку if (window.width <= 1024) - и это тоже не помогло.
- неправильно пробывал, тогда уж надо было пробывать if (window.screen.width <= 1024).Ну а лучше всего в данном случае пользоваться if (screen.width <= 1024). Уфф!! Проблема решалась весь день и наконец-таки решена. :)

___________________________________________
Для тех кто не вьехал в тему - вопрос решен :)
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

Дам маленькую подсказку, я в свое время до нее за пару минут додумался, после осознания что document.body.width величина постоянная :D , внимание подсказка "scroll..." :cool:
WEB_bobby
Сообщения: 81
Зарегистрирован: 03 фев 2007, 16:59

Duncon писал(а):Дам маленькую подсказку, я в свое время до нее за пару минут додумался, после осознания что document.body.width величина постоянная :D , внимание подсказка "scroll..." :cool:


- Да я рано радовался, у меня то вот это срабатывает, но
только теперь я понял что мне надо тут не на размер скрина монитора делать проверку, а именно на размер окна браузера потому что когда я ставлю высокое разрешение и сворачиваю окно, размер скрина монитора тот же самый остается - а я сижу думаю почему все-таки в окошке надпись ' > 1024'. Также у меня СSS параметры вычисляются по формуле куда должно подставляется именно значение размеров ширины окна а не скрина монитора - иначе эти превращения параметров CSS получается абсолютно некорекктными. Вообщем мне нужна проверка на ширину окна браузера. Помогите,
Duncon. - Я вам все прощу :) . Не мучьте меня догадками overflow... я этого не перенесу. :)

Код: Выделить всё

window.onresize = function()
		  {
			  if (screen.width <= 1024)
				 alert('<=1024');
	                  else
		             alert(' > 1024');       
                   } 
	
	    
		function onLoadCheckWidth()
		{
			 if (screen.width > 1024)
			 {
				  alert(' > 1024');
		
			}
		
		}
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

Ну типо на раз такой ленивый, такую конструкцию я использовал для выставления полоски в самом низу...
if(document.body.clientHeight-21 >= document.body.scrollHeight){
}
WEB_bobby
Сообщения: 81
Зарегистрирован: 03 фев 2007, 16:59

Duncon писал(а):Ну типо на раз такой ленивый, такую конструкцию я использовал для выставления полоски в самом низу...
if(document.body.clientHeight-21 >= document.body.scrollHeight){
}
Как ни странно обошолся только if (document.body.clientWidth <= 1024) :)



И в формулу вычисления значенийй CSS подставлял document.body.clientWidth ;)
Ответить