2016-05-31 1 views
0

С функцией смещения jquery мы можем найти координаты элемента относительно окна. Как делает jquery?Как jquery находит смещение элемента?

+2

Возможный дубликат [jQuery получить местоположение элемента относительно окна] (http://stackoverflow.com/questions/3714628/jquery-get-the-location-of-an-element-relative-to-window) – shole

+1

прочитайте [исходный код] (http://james.padolsey.com/jquery/#v=1.11.2&fn=jQuery.fn.offset), если вы действительно хотите знать, как – charlietfl

+0

Я прочитал, но у меня нет понял. Я новичок в javascript – Fistright

ответ

-1

Может быть, вы ищете .offsetParent()

Offset Parent

+0

Я хочу сказать, как это значение найдено. Каковы проходы, которые функция выполняет, чтобы найти это значение? – Fistright

+0

Предположим, что элемент находится внутри какого-либо другого элемента, и вы хотите разместить #bar относительно #foo (его родителя) var elem = $ ("# bar"); var offset = elem.offset(). Left - elem.parent(). Offset(). Left; – Sami

+1

рабочий пример http://stackoverflow.com/questions/10954931/how-to-get-offset-relative-to-parent-in-jquery – Sami

1

Jquery обычно пытается работать в кросс моды браузера, но это может помочь понять некоторые из основных вариантов и принципов.

Element.getBoundingClientRect() возвращает размер элемента и его положение относительно окна просмотра браузера.

В разумно современных браузерах размеры видовых экранов и окон могут быть опрошены с использованием window.innerHeight и связанных свойств (innerWidth, outerHeight, outerWidth).

Координаты элементов fixed position относительно видового экрана могут быть получены из интерпретации их значений computed style, относительно которых рамка просмотра закрыта позиционируемым элементом относительно.

Падения назад варианта просуммировать offsetLeft и offsetTop значения HTMLElement с интересами всех HTMLobjects в их offsetParent цепи для расчета элемента кумулятивного смещения в тонированном документе, а затем корректировать расчетные значения для текущих X документа и позиции прокрутки Y. В статье MDN от window.scrollX приведен пример расчета положения прокрутки в режиме кросс-браузера.

Это предназначено как набор ссылок для документации о том, как код jQuery или любая другая библиотека или простой код javascript могут вычислять положение окна. Я не пытался исследовать каждую ошибку браузера, которую jQuery может спокойно работать для вас.

+0

Я не понял, как jquery вычисляет значения смещения еще ... – Fistright

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

  • Нет связанных вопросов^_^