Вопрос по html, javascript, jquery – Получить позицию Div (вверху) в JavaScript?

5

Один div я устанавливаю высоту в CSS, используяtop:-26px;, У меня есть другие div-ы, другие места, где я бы хотел присоединиться к этому div. Я замечаю в написании jquery.css('top') получает мне мой css, а не координаты у div. Как я могу получить абсолютную x, y позицию, используя javascript?

Error: User Rate Limit Exceeded Mohamad Rostami

Ваш Ответ

7   ответов
0

var elem=document.getElementById("elemID");
var top=elem.offsetTop;
var left=elem.offsetLeft;

var top=$("#elemID").offset().top;
var left=$("#elemID").offset().left;
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
17

function getOffset( el ) {
    var _x = 0;
    var _y = 0;
    while( el && !isNaN( el.offsetLeft ) && !isNaN( el.offsetTop ) ) {
        _x += el.offsetLeft - el.scrollLeft;
        _y += el.offsetTop - el.scrollTop;
        el = el.offsetParent;
    }
    return { top: _y, left: _x };
}
var x = getOffset( document.getElementById('yourElId') ).left; 
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceededkirupa.com/html5/get_element_position_using_javascript.htm
Error: User Rate Limit Exceededjsfiddle.net/rlemon/m7A6T
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
0

var elementPosition = jQuery(element).offset();
var elementTopPositon = elementPosition.top;
3

function getElementPosition(id) {
    var offsetTrail = document.getElementById(id);
    var offsetLeft = 0;
    var offsetTop = 0;
    while (offsetTrail) {
        offsetLeft += offsetTrail.offsetLeft;
        offsetTop += offsetTrail.offsetTop;
        offsetTrail = offsetTrail.offsetParent;
    }

    return {
        left: offsetLeft,
        top: offsetTop
    };
}​

lefttop

offset()

var pos = $("#element").offset();
console.log(pos.left)
console.log(pos.top)
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
3

function offset(el) {
    var rect = el.getBoundingClientRect(),
    scrollLeft = window.pageXOffset || document.documentElement.scrollLeft,
    scrollTop = window.pageYOffset || document.documentElement.scrollTop;
    return { top: rect.top + scrollTop, left: rect.left + scrollLeft }
}
var offsetEl = offset(document.getElementById('some_id'));
console.log(offsetEl.left, offsetEl.top);

Error: User Rate Limit Exceededjsfiddle.net/Darker/sj6tnfce/2
Error: User Rate Limit Exceededdeveloper.mozilla.org/en/docs/Web/API/Element/…
Error: User Rate Limit Exceeded
11

jQuery(element).offset().top

Error: User Rate Limit Exceeded.offset().topError: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit ExceededjQuery(element).offset().top.
Error: User Rate Limit Exceeded
0
var MyElement = document.getElementById("...Your_DIV_Control...");

var top = MyElement.getBoundingClientRect().top;
Error: User Rate Limit Exceeded

Похожие вопросы