Показать сообщение отдельно
  #1 (permalink)  
Старый 12.09.2011, 20:26
Аватар для unclechu
Интересующийся
Отправить личное сообщение для unclechu Посмотреть профиль Найти все сообщения от unclechu
 
Регистрация: 12.09.2011
Сообщений: 14

Получить размеры рабочей области окна в Chrome
В общем стоит следующая задача задача: я создаю новое окно window.open(…), внутри примитивный html-код, css таков:
html, body {width: 100%; height: 100%;}
html {overflow: hidden;}
* {margin: 0; padding: 0; border: 0;}

И мне нужно получить размер рабочей области окна. В моём арсенале так же jQuery. Я получаю в любом из браузеров (кроме Chrome) это следующим образом:
var wnd = window.open('', 'olalaWND');
wnd.document.open();
wnd.document.write(html);
wnd.document.close();
$(wnd.document).width();
$(wnd.document).height();

Сам html код внутри окна следующий:
<html><head><title>check</title>
<style type="text/css">html, body {width: 100%; height: 100%;} html {overflow: hidden;} * {margin: 0; padding: 0; border: 0;}</style>
</head><body></body></html>

Дак вот, везде размеры я получаю без проблем. Но в Chrome полная труба, я долго возился, что только я не прибовал, ничего не вышло, вылазит нуль и всё тут, для Chrome 100% == 0, у меня постепенно появляется ощущение, что я начинаю не любить Chrome больше Opera и даже больше IE6! Там хоть как-то выкрутиться можно, а тут ни вправо ни влево. Я и блоки внутри вкладывал, обворачивал, и пробовал инкрементить по пикселю до появления скрулла, но! Если например внутри есть 100px блока и делаем scrollBy(40000, 0), получим document.scrollLeft == 100, при том, что на самом деле никакого скрулла и сдвига по скруллу в помине нету. Полная труба. Помогите, у кого какие идеи есть?

Я даже пробовал создавать Input и инкрментить ему отступ и передавать фокус, в надежде, что если появился скрулл он сдвинется к месту фокуса, но не тут-то было, пока ничего не тыкнешь, к месту фокуса скрулла не видать.
Ответить с цитированием