Высота всей страницы(вместе с невидимой частью)
Дано:
Страница большой высоты. Т.к. вся не помещается в окне браузера, имеется вертикальный скролл. Доктайп XHTML Strict 1.0 В CSS имеем: Код:
html,body{height:100%} Найти: Вывести высоту страницы в px. Как я пытался: 1.alert(document.getElementById('html').offsetHeig ht) 2.alert(document.getElementById('html').clientHeig ht) В обоих случаях выводится результат равный высоте окна браузера. Как я думаю, из-за html:100%. Вопрос: Как же узнать высоту всей страницы, а не только видимой части? |
lancer,
var ua = navigator.userAgent.toLowerCase(); var isOpera = (ua.indexOf('opera') > -1); var isIE = (!isOpera && ua.indexOf('msie') > -1); function getDocumentHeight() { return Math.max(document.compatMode != 'CSS1Compat' ? document.body.scrollHeight : document.documentElement.scrollHeight, getViewportHeight()); } function getViewportHeight() { return ((document.compatMode || isIE) && !isOpera) ? (document.compatMode == 'CSS1Compat') ? document.documentElement.clientHeight : document.body.clientHeight : (document.parentWindow || document.defaultView).innerHeight; } |
Kolyaj, спасибо. Выручил.
|
Цитата:
Что можна придумать с Explorer'ом? |
Цитата:
|
Отличный рабочий способ.
Для аналогичного поиска ширины, в функции надо все "Height" заменить на "Width". ЗЫ: пишу, потому что до меня самого доходило это около часа. :) |
Всё прекрасно работает в хроме, по крайней мере)
|
Часовой пояс GMT +3, время: 07:28. |