Ответ 1
Попробуйте следующее:
var elementTop = document.getElementById('yourElementId').offsetTop;
var divTop = document.getElementById('yourDivId').offsetTop;
var elementRelativeTop = elementTop - divTop;
У меня есть прокручиваемый div, тот, что слева на приведенном выше изображении.
В этом div существует много элементов, давайте сосредоточимся на одном из них (выделен серым) и назовем его A.
Правильное изображение представляет собой представление div с полным размером (без установки прокрутки или ширины), где A помещается без прокрутки.
Как я могу найти значение X (в зеленом цвете), имея в настоящее время левый div на странице.
т.е. принимая во внимание:
то есть. Как получить относительную координату y элемента внутри прокручиваемого div? простыми словами: как рассчитать x через javascript?
Попробуйте следующее:
var elementTop = document.getElementById('yourElementId').offsetTop;
var divTop = document.getElementById('yourDivId').offsetTop;
var elementRelativeTop = elementTop - divTop;
Вам нужно указать свойство родительской позиции div как относительное, а затем использовать метод position() (если вы используете jquery).
Отметьте это: http://jsfiddle.net/V9rGG/
Попробуйте удалить
position: relative
и посмотреть, что произойдет.