Положение JQuery () в простом JavaScript

У меня есть следующая строка кода:

var newLeftPos = $('span#s' + i).position().left - parseInt($('span#s' + i).css('width'), 10);

Он отлично работает в ie6 и выше, но мне также нужно заставить его работать для ie5.5. (Давайте не будем спорить об этом сейчас - я знаю - но у меня нет выбора)

Я уверен, что он падает на.position(), пока я тестирую на ie5.5 с jquery 1.2

Как я мог сделать то же самое в простом JavaScript? Может ли "offsetParent" помочь мне здесь? Видимо ie5.5 это поддерживает.

Заранее спасибо.

1 ответ

Решение

Вы ищете offsetParent, offsetLeft и offsetRight.

Как видно из ссылки, похоже, что они поддерживаются даже старой бабушкой IE5.5.

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

Тогда ваша функция должна быть что-то вроде

var span = document.getElementById('s' + i);

var newLeftPos = span.offsetWidth - parseInt(span.style.width);
Другие вопросы по тегам