JS: Как узнать координаты элемента в Internet Explorer?

klava

Новичок
JS: Как узнать координаты элемента в Internet Explorer?

Сколько не искал, так и не смог найти ничего, кроме
прославутых "offsetTop" и "offsetLeft", но в IE(6) они
не работают, хотя в Opera и Mozilla, всё идёт нормально.
Самое интересное, что формально в IE-модели они есть,
браузер не не герирует ошибку, но эти свойства всегда равны 0. И во всех
справочниках указывается, что IE их поддерживает.

Есть ли какая-нибуть альтернатива этим двум свойствам?:confused:
 

Андрейка

Senior pomidor developer
а еще в ie js не работает умножение :( формально оно конечно описано и в справочниках указывается, но вот 0*0 почему-то всегда выводит 0 :( подскажите как же быть
 

MiRacLe

просто Чудо
то что ты называешь "координаты элемента" складываются из offsetTop и offsetLeft всех родительских элементов.

учитесь пользоваться поиском
 

klava

Новичок
Автор оригинала: MiRacLe
то что ты называешь "координаты элемента" складываются из offsetTop и offsetLeft всех родительских элементов.

учитесь пользоваться поиском
Я конечно понимаю, что ты умный всё такое, но тебе не приходило в голову,
что ты не первый, кому пришло в голову найти в инэте скрипт типа

function getBounds(element)
{
var left = element.offsetLeft;
var top = element.offsetTop;
for (var parent = element.offsetParent; parent; parent = parent.offsetParent)
{
left += parent.offsetLeft;
top += parent.offsetTop;
}
return {left: left, top: top, width: element.offsetWidth, height: element.offsetHeight};
}

?????:confused:

Наверное нет, я так думаю....



На будущее прежде чем вставлять свои умные комментарии, прочитай по внимательней вопрос,
может тебя озарит откровение свыше и ты поймёшь, что если работает в опере и мозиле, то
свойства были задействованы првильным образом...:rolleyes:

-~{}~ 15.11.06 11:05:

Автор оригинала: Андрейка
а еще в ie js не работает умножение :( формально оно конечно описано и в справочниках указывается, но вот 0*0 почему-то всегда выводит 0 :( подскажите как же быть
Очень интересное замечание. Судя по всему ты филосов с большим жизненным
опытом.

На будущее.
Я задаю вопросы, чтобы получать на них ответы и делать свою работу.
Если ты хочешь попрактиковаться в остроумии, то торчи в чате.
Или по крайней мере ВНИМАТЕЛЬНО ЧИТАЙ ВОПРОС и ВРУБАЙСЯ В НЕГО ПОЛНОСТЬЮ,
ЧТОБЫ НЕ БЫЛО НЕЛЕПЫХ ОТВЕТОВ НЕ ПО ТЕМЕ!:mad:
 

klava

Новичок
Просьба:
пожалуйста читайте вопрос внимательно, чтобы не получалось так, что с у умным видом дётся глупое замечание не по существу.

Если же вы обнаружите с моей стороны ошибку, то граммотно опишите её и объясните как всё должно быть. Заранее спасибо.
 

Андрейка

Senior pomidor developer
уважаемый Клава, не могли бы Вы вести себя чуточку покорректнее? Я конечно понимаю, что отвлек Вас от вашего дела - поиска скриптов в инете и копирования их к себе, но сделал я это не со зла, а исключительно из желания помочь Вам разобраться в ситуации. Так что давайте, уважаемый Клава, будем взаимовежливы. Спасибо за внимание.
 

klava

Новичок
Автор оригинала: an_kalinovski
Попробуй так:
<a href="#" onclick="alert(event.screenX + ' and ' + event.screenY);">blabla</a>
Если я не ошибаюсь, то это определение координаты
курсора мыши?!:confused:

Мне не это нужно было.

-~{}~ 15.11.06 11:21:

Автор оригинала: Андрейка
уважаемый Клава, не могли бы Вы вести себя чуточку покорректнее? Я конечно понимаю, что отвлек Вас от вашего дела - поиска скриптов в инете и копирования их к себе, но сделал я это не со зла, а исключительно из желания помочь Вам разобраться в ситуации. Так что давайте, уважаемый Клава, будем взаимовежливы. Спасибо за внимание.
Я тоже очень извиняюсь, что испортил вам настроение, что, возможно, помешало Вам заниматся Вашим делом - искть москвичку с большой jp. Впредь обещаю относится к сам должным уважением. Со своей стороны прошу об одном: если Вы действительно знаете, то отвечайте конкретно, понятно и без ехидства. По рукам?;)
 

Shicoo

Новичок
Я тоже очень извиняюсь, что испортил вам настроение, что, возможно, помешало Вам заниматся Вашим делом - искть москвичку с большой jp. Впредь обещаю относится к сам должным уважением. Со своей стороны прошу об одном: если Вы действительно знаете, то отвечайте конкретно, понятно и без ехидства. По рукам?;)
не мешайте искать Андрейке москвичку с большой jp, огрмной gr, красивыми gl и длинными ng :)


а если честно, klava поищите, только хорошо поищите, внимательно читая что написано. Таких скриптов туева хуча и найти их имхо не сложно.

PS: не сочтите загрубость мой пост, очень уж торкнуло "искть москвичку с большой jp"
 

klava

Новичок
Автор оригинала: Shicoo
не мешайте искать Андрейке москвичку с большой jp, огрмной gr, красивыми gl и длинными ng :)


а если честно, klava поищите, только хорошо поищите, внимательно читая что написано. Таких скриптов туева хуча и найти их имхо не сложно.

PS: не сочтите загрубость мой пост, очень уж торкнуло "искть москвичку с большой jp"
Понимаете, Shicoo, скриптов то дёствительно "куева туча", как вы изволились выразится, и все они хороши...
Но принцип у них , как я нарыл за два дня, один. На счёт меня Вы не беспокойтесь, в нэте я пошарюсь, но,
может кто-то всё таки знает, какие ещё "эрогенные зоны" элементов можно использовать.
 

MiRacLe

просто Чудо
На будущее прежде чем вставлять свои умные комментарии, прочитай по внимательней вопрос,
может тебя озарит откровение свыше и ты поймёшь, что если работает в опере и мозиле, то
свойства были задействованы првильным образом...
Многоуважаемая со всех сторон Клава Батьковна, а Вы соизволили сходить по ссылке, которую я привёл и поинтересоваться что же ТАМ НАПИСАНО? Или сей труд слишком тяжёл для труженицы отдалённого села?
 

klava

Новичок
Автор оригинала: MiRacLe
Многоуважаемая со всех сторон Клава Батьковна, а Вы соизволили сходить по ссылке, которую я привёл и поинтересоваться что же ТАМ НАПИСАНО? Или сей труд слишком тяжёл для труженицы отдалённого села?
Исвиньяюсь за грубость, не заметил ссылку.

Спасибо за ссылку. Но этот скрипт не сильно оличается от првидённого мною выше,
если не считать новое свойство "clientTop". Я не знаю почему, но, хотя у Вас и написано, что он для IE, но как
раз там он и не работает, как и в классическом варианте (см. выше). Причина для меня не ясна, но теперь,
проходя в цикле (по всем parent`ам), он прибавляет по 0 за "offsetLeft" (ну это уже было) и по 1 за "clientLeft".

Результат функции - 3. Но это не совсем то, что мне нужно, ибо и этого всёравно мало (в Mozille, например,
гдё всё идёт по плану, он равен 478). Может в Вашей практике встречались подобные случаи?
(Сразу хочу оговорится, что если вы предположите, что ошибка в ДНК, то я уже проверил. Не там).


Тем не менее огромное СПАСИБО за внимание и ТЕРПЕНИЕ.


Да, и ещё: я не Клава Батьковна, а klava Батькович.;) :cool:
 

klava

Новичок
Автор оригинала: hermit_refined
Где можно посмотреть страницу, на которой возникают такие проблемы?..
Она у меня на локалке. Я не смогу тебе её скинуть,
потому что у неё в инклудах 14 файлов и база данных.

Но весь запор в маленьком кусочке.

Есть некий элемент (сначала была кнопка, потом стал див, (но легче не стало) ),
при наведении на него, снизу сползает меню.

Там правда ещё таблиц-матрёшек тьма темнючая (143 штуки).

Но сам элемент почти в самом низу (у него парентах - 2 таблицы числятся).

Я с умвообще писал когда, в опере проверял. Думал всё готово. Но тут в ИЕ открыл -
и на тебе. Геммов - рой. Два дня парюсь, а ничего найти не могу. Везде работает,
а в IE - нет. И никто ни чё сказать не может. Только ным видом одни и те же
заеженные скрипты суют и всё.:confused:
 

Nik S.

Новичок
klava, вышли/выложи отрендеренный код и укажи объект, для которого нужно получить координаты - помогу. (еще проверь свойство doctype).
 

MiRacLe

просто Чудо
Она у меня на локалке. Я не смогу тебе её скинуть,
потому что у неё в инклудах 14 файлов и база данных.
...подмывает послать в "на танке"...

1. Открыть на "локалке" требуемую страницу в браузере.
2. Сохранить страницу полностью (Save page as -> Web page complete)
3. Закачать полученное на доступный хостинг(народ.ру например)
4. опубликовать ссылку на закачанное добро.
 

hermit_refined

Отшельник
потому что у неё в инклудах 14 файлов и база данных.
хм... в HTML-страничке инклюды и база данных? однако... ;-)
И никто ни чё сказать не может
И не сможет, потому что исходного кода нет. By default, я бы всё-таки исходил из того, что ошибка у вас в чём-то другом.

(143 таблицы в dhtml - это, кстати, тоже страшно, лично я таких глюконакапливающих конструкций избегаю.)
 

klava

Новичок
Автор оригинала: hermit_refined
хм... в HTML-страничке инклюды и база данных? однако... ;-)

И не сможет, потому что исходного кода нет. By default, я бы всё-таки исходил из того, что ошибка у вас в чём-то другом.

(143 таблицы в dhtml - это, кстати, тоже страшно, лично я таких глюконакапливающих конструкций избегаю.)
Во первых это не HTML, а PHP. Страница работает с базами данных.
Во вторых. Эти 143 таблицы создаются ситсемой классов на той же PHP,
я их даже видеть не вижу(они тоже входят в список 14 инклудов).
Кстати их я могу тебе прислать. Заодно заценишь. Давай мыло.
 

Nik S.

Новичок
klava, выложишь код своей страницы или тебе помощь не нужна?
 
Сверху