2010-12-11 2 views
0

У меня есть прокручиваемый элемент с дочерним элементом. Внутри этого дочернего элемента (который не имеет заданной ширины или высоты) представляет собой набор абсолютно позиционированных элементов, которые могут иметь произвольные значения ширины, высоты, левого и верхнего. Родительский элемент имеет возможность прокрутки для просмотра этих абсолютно позиционированных элементов, где бы они ни находились, но мне трудно получить, сколько из этого прокручиваемого пространства находится внутри этого родителя. Как мне это сделать?Javascript, DOM: нужно найти пространство внутри прокручиваемого элемента

Для справки, вот некоторые из моих CSS:

.ruler_container { 
    max-width: 620px; 
    max-height: 400px; 
    overflow: auto; 
} 

.ruler { 
    position: relative; 
} 

    .inner_elem { 
     position:  absolute; 
    } 

ширина, высота, слева, и максимальные значения для inner_elem s произвольны.

+0

Добавление кода было бы полезно – William

+2

Если внутренние элементы расположены абсолютно, тогда этот вопрос действительно не имеет смысла. Некоторый элемент контейнера (например, этот «ребенок», который вы упомянули) должен быть «position: relative» для «захвата» абсолютно позиционированных элементов. Тем не менее, абсолютно позиционированные элементы выходят из потока макета (по определению), поэтому я не вижу, как вы получите границу содержимого, чтобы обернуться вокруг них. – Pointy

+0

Вы имеете в виду, что нет способа получить прокручиваемое пространство внутри родителя? – Hamster

ответ

0

Ну, я нашел свой ответ после того, как пробрался через DOM: атрибуты scrollWidth и scrollHeight.

В настоящее время мой код и структура DOM довольно сложны, поэтому было сложно сделать этот вопрос более точным за пределами вышеперечисленных деталей.