вычесления позиции
как с минимальной нагрузкой на браузер вычислять позицию элемента - возник этот вопрос потому что вычиселние будет происходить во время события onmousemove.
надо получать свойство left |
все вроде нашел http://javascript.ru/forum/misc/7839...ri-div%60.html
|
Вариантов наверное немного, на ум приходит только поочередно перебирать родителей и складывать offsetParent.offsetLeft пока не доберетесь до BODY. Чтобы не дергать каждый раз DOM, может быть легче будет один раз посчитать позицию элемента, а затем при его перемещение изменять её вручную.
|
нашел такой код
function getOffsetRect(elem) {
// (1)
var box = elem.getBoundingClientRect()
// (2)
var body = document.body
var docElem = document.documentElement
// (3)
var scrollTop = window.pageYOffset || docElem.scrollTop || body.scrollTop
var scrollLeft = window.pageXOffset || docElem.scrollLeft || body.scrollLeft
// (4)
var clientTop = docElem.clientTop || body.clientTop || 0
var clientLeft = docElem.clientLeft || body.clientLeft || 0
// (5)
var top = box.top + scrollTop - clientTop
var left = box.left + scrollLeft - clientLeft
return { top: Math.round(top), left: Math.round(left) }
}
|
пишу слайдер и нужна это затем что б расчитать позицию слайдера относительно блока.
|
Цитата:
|
что возращает document.documentElement ?
дошло=) возращает <html> |
| Часовой пояс GMT +3, время: 14:55. |