Иногда в проекте вы используете JS для получения позиций элемента для поиска элементов. Во -первых, используйте картинку, чтобы объяснить взаимосвязь между шириной Scroll, клиентской и смещной -шириной.
Краткое введение в JS, получая различные ширины и высоты :
Scrollheight: Получает высоту прокрутки объекта.
Scrollleft: установите или получите расстояние между левой границей объекта и самым левым концом видимого в настоящее время в окне
Scrolltop: установите или получите расстояние между верхней частью объекта и верхней частью видимого содержания в окне
Прокрутка: Получите ширину прокрутки объекта
OffSetheight: Получает высоту объекта по сравнению с макетом или родительской координатой, указанной родительской координатой.
OffSetSetleft: Получает рассчитанное левое положение объекта относительно макета или родительских координат, указанных в свойстве OffSetSet.
OffSetTotop: Получает рассчитанную верхнюю позицию объекта относительно макета или родительской координаты, указанной в свойстве OffSetTop
event.clientx Горизонтальные координаты по сравнению с документом
Event.clienty вертикальные координаты относительно документа
event.offsetx Горизонтальные координаты по сравнению с контейнером
Event.Offsety Вертикальные координаты относительно контейнера
document.documentelement.scrolltop значения прокрутки вертикально
event.clientx + document.documentelement.scrolltop относительно горизонтальной координаты документа + количество прокрутки в вертикальном направлении
Вышеуказанное в основном относится к IE, а различия в Firefox заключаются в следующем:
IE6.0, FF1.06+:
ClientWidth = ширина + прокладка
ClientHeight = высота + прокладка
OffsetWidth = ширина + накладка + граница
OffSetheight = высота + накладка + граница
IE5.0/5.5:
ClientWidth = ширина - граница
ClientHeight = высота - граница
OffsetWidth = ширина
OffSetheight = высота
(Следует упомянуть, что атрибут маржи в CSS не имеет ничего общего с клиентской -точкой, OffsetWidth, ClientHeight и OffSetheight)
OffsetWidth (ширина+накладка+граница)
Предположим, OBJ - это управление HTML.
obj.offsettop относится к позиции, целочисленному, единичному пикселю от OBJ до верхнего или верхнего управления.
obj.offsetleft относится к позиции, целочисленному, единичному пикселю от OBJ на левый или верхний контроль.
obj.offsetwidth относится к пикселям ширины, целочисленного и единиц самого контроля OBJ. Получает ширину видимого содержания объекта, исключая полосы прокрутки и границы;
obj.offsetheight относится к высоте, целочисленному, единичному пикселю самого контроля OBJ.
Разница между offsetwidth и style.width
1. OffSetTop возвращает число, а style.top возвращает строку, которая также содержит устройство: PX в дополнение к номеру.
2. OffsetTop только для чтения, а style.top-это readwrite.
3. Если для элементов HTML не указано ни одного верхнего стиля, то style.top возвращает пустую строку.