2014-01-17 3 views
0

Я хочу изменить размер окна браузера Safari в соответствии с высотой div с id 'po'. У меня есть следующий JavaScript:Почему не изменяется размер окна до нужной высоты?

var divHeight = document.getElementById('po').offsetHeight; 
    console.log(divHeight); 
    divHeight = divHeight + 30; 
    var y = parseInt(divHeight,10); 
    var w=window.innerWidth; 
    window.resizeTo(w,y); 
    console.log(divHeight); 

Выход консоли:

83 
113 

Но окно получает уменьшенный до фактической внутренней высоты всего 30! Почему не изменяется размер окна? Если я измеряю div (он содержит таблицу), высота div действительно равна 83. Итак, почему размер окна не совпадает? Как это исправить?

+0

Это потому, что вы регистрируете 'divHeight' после добавления 30 к нему? Если вы ищете высоту окна, вы можете использовать что-то вроде: 'var windowSize = window.innerHeight;' и log 'windowSize' – Craighead

+0

Я не понимаю, почему logging divHeight должен влиять на window.resizeTo. Вы можете объяснить? –

+0

Я удалил журнал, но окно по-прежнему изменяется на неправильную высоту. Я не думаю, что каротаж имеет к этому какое-то отношение. –

ответ

1

Проблема была в моих расчетах и ​​непонимании того, как работает window.resizeTo().

Размер, который имеет размер окна window.resizeTo(), включая хром (полосы прокрутки, адресную строку, панель избранного и т. Д.)! Как только я добавил некоторые «дополнения», чтобы включить это, он работал, как ожидалось.

0

Угадайте, что эта ссылка вам поможет. почему бы вам не взглянуть на эту страницу .... Javascript's `window.resizeTo` isn't working

+0

window.resizeTo работает - я использую сафари. Проблема не в window.resizeTo. Если я введу номер прямо в window.resizeTo, он изменится до такого размера. Проблема в том, что я передаю var в нее. –

+0

о, я вижу. Можете ли вы поместить свой код в jsFiddle, чтобы мы могли вам помочь. здесь вы идете ............. http://jsfiddle.net/ – Kac

Смежные вопросы