Подскажите, как решить проблему с разрешением экрана?
Что бы с разрешением 1366 показывало одну картинку, а с разрешением 1680*1050 подсовывало другую!
Есть скрипт
<link href="http://kyshetka.com/themes/grin/css/1680.css" rel="stylesheet" type="text/css">
<link href="http://kyshetka.com/themes/grin/css/1366.css" rel="stylesheet" type="text/css">
<script>
w=1680;
if (screen.width >= 1366) w=1366;
else if (screen.width >= 1680) w=1680;
if (w > 1024) document.write(
'<link href="http://kyshetka.com/themes/grin/css/'+w+'.css" rel="stylesheet" type="text/css">'
);
</script>
</head>
Но что то не получается...
Что делать?
12.01.2012, 19:01
kakto_os
Думаю, было бы разумнее использовать ширину документа.
Если же нужно именно ширину монитора, то замените window.innerWidth на screen.width.
<script>
var w = window.innerWidth;
var cssName;
if ((w >= 1366) && (w < 1680)) cssName = 1366; else if(w >= 1680) cssName = 1680;
if (w >= 1366) document.write('<link href="http://kyshetka.com/themes/grin/css/'+cssName+'.css" rel="stylesheet" type="text/css">');
</script>
12.01.2012, 19:03
Azazaza
может так
w=1366;
if (screen.width >= 1680) w=1680;
if (screen.width > 1024) document.write(
'<link href="http://kyshetka.com/themes/grin/css/'+w+'.css" rel="stylesheet" type="text/css">'
);
12.01.2012, 19:21
kakto_os
Azazaza, в коде, при разрешении меньшим, чем 1366*х, но большим, чем 1024*х (1280*768 например), будет всегда выводиться css для 1680.
Хотя возможно так и надо, но сомневаюсь.
12.01.2012, 19:36
Azazaza
да, точно, поправил)
17.01.2012, 09:37
антигерой
Задай слой по ID и в зависимости от разрешения экрана загоняй в него с помощью InnerHTML какие надо картинки.
Цитата:
<div id="pictures424"></div>
<script type="text/javascript">
var body_width=document.body.clientWidth;
var body_height=document.body.clientHeight;
Не знаю твоих задач, но я бы оперировал с document.body.clientWidth (ширина именно окна браузера, а не всего экрана)
Хотя когда как. Я у себя сейчас переправил одну из процедур на screen.width, не знал об этой переменной.