Записки Лешего

О жизни, линуксе и всяком разном

Цитата из Библии: Вино — насмешливо, крепкие напитки — буйны, и всякий, кто из-за них сбивается с пути, не мудр. (Притчи 20:1)

Координаты элемента страницы

Вторник, 17 февраля 2009 г.
Рубрика: Программирование
Метки: | |
Просмотров: 856
Подписаться на комментарии по RSS

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

Вроде бы все понятно — юзер щелкнул по кнопке, чем инициировал соответствующее событие. Следовательно, где-то есть координаты указателя мыши в момент щелчка и координаты кнопки, по которой щелкнули. Однако, найти координаты мыши в JavaScript не удалось. Брат Гугл тоже мало чем смог помочь в этом отношении. Зато координаты элементов вычисляются на раз-два.

function offsetPosition(element) {
var offsetLeft = 0, offsetTop = 0;
do {
offsetLeft += element.offsetLeft;
offsetTop += element.offsetTop;
} while (element = element.offsetParent);
return [offsetLeft, offsetTop];
}

Используя эту функцию, я смог спозиционировать форму на уровень нажатой кнопки.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставьте комментарий!

Не регистрировать/аноним

Используйте нормальные имена.

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email.
(При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.)



(обязательно)