Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> узнать style.position 
:(
    Опции темы
bars80080
Дата 1.6.2010, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 15
Всего: 315



есть элемент, которому мы хотим придать смещение, допустим сдвинуть на 100 пикселов влево.

вот, у нас есть функция:

Код

function getElementPosition(elemId) {
    var elem = document.getElementById(elemId);
    var w = elem.offsetWidth; var h = elem.offsetHeight;
    var l = 0, t = 0;
    while(elem) {
        l += elem.offsetLeft; t += elem.offsetTop; elem = elem.offsetParent;
    }
    return {"left":l, "top":t, "width": w, "height":h};
}

для поиска текущих координат. остаётся только установить другую координату

функция отлично считает, но её данные не учитывают, если элемент находится в позиционированном элементе.
в этом случае полученные координаты не помогут.

каким образом можно проверять состояние style.position каждого следующего элемента?
PM MAIL WWW   Вверх
ksnk
Дата 1.6.2010, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



bars80080, если учитывать все , функция получается уж очень корявая и страшная ;)
вот, для визуализации этого утверждения часть кода из mootools. Обычно. такой ужас не требуется. Как правило, для частных случаев не нужно вычислять значения границ, наличие-отсутствие body и доктайп документа, все более менее зафиксировано. Так что можно слегка оптимизировать и сократить... Хотя случаи бывают разные, так что пользоваться фреймвоками - это, вообще говоря, благо  smile 


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
bars80080
Дата 1.6.2010, 16:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 15
Всего: 315



ну, в частном случае, понятное дело, решается просто. а вот в общем...

жаль.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0455 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.