Вопрос по абсолютному позиционированию <DIV>
Вот такой вопрос.
Делаю появляющийся в точке клика <DIV>
Вот функция
function rek_show(el_show,event){
elem=document.getElementById(el_show);
if(navigator.appName.indexOf('Internet') > -1) { elem.style.left=event.x; elem.style.top=event.y; }
else { elem.style.left=event.pageX; elem.style.top=event.pageY; }
elem.style.display = 'inline';
return false
}
Проблема в том что в IE <DIV> появляется там где надо
А в Опере И Мозиле нужные координаты elem.style.left и elem.style.top присваиваются(проверял с помощью alert)
но <DIV> остаётся на месте то есть не перемещается
Кто знает подскажите почему ????
Код:
function rek_show(el_show,event){
elem.document.getElementById(el_show);
elem.style.position = 'absolute'; //абсолютное позиционирование
if(navigator.appName.indexOf('Internet') > -1) { elem.style.left=event.x; elem.style.top=event.y; }
else { elem.style.left=event.pageX; elem.style.top=event.pageY; }
elem.style.display = 'inline';
return false
}
elem.document.getElementById(el_show);
elem.style.position = 'absolute'; //абсолютное позиционирование
if(navigator.appName.indexOf('Internet') > -1) { elem.style.left=event.x; elem.style.top=event.y; }
else { elem.style.left=event.pageX; elem.style.top=event.pageY; }
elem.style.display = 'inline';
return false
}
Теперь и в Опере заработало, а в МОзиле глючит, выдаёт со большим смещением в право ???
Цитата: vadim_k
Теперь и в Опере заработало, а в МОзиле глючит, выдаёт со большим смещением в право ???
Я как-то тоже эту проблему решал.
У меня вот что получилось.
Код:
define("OFFSET_X", 2); // смещение по X
define("OFFSET_Y_MSIE", 130); // смещение для MSIE
define("OFFSET_Y_OTHER",110); // смещение для других браузеров
define("OFFSET_Y_MSIE", 130); // смещение для MSIE
define("OFFSET_Y_OTHER",110); // смещение для других браузеров
т.е. смещение для всех по X одинаково.
А для Y IE и все остальные. В эксперименте участвовали:
IE7 , Opera 9.0, Mozila FireFox 2.0.0.1
а у мя никакого смещения )
А в Firefox/1.0.7(pageX,pageY) по Х приходится смещать -600
PS: FireFox 2.0.0.1 / 1.5.0.7 оба нормально =)
пробую
setTimeout("elem.style.display = 'block'",1000);
не работает
Код:
setTimeout("document.getElementById('"+your_id+"').style.display = '[COLOR=Red]none[/COLOR]'",1000);
Совсем запарился надо 'none'
а я балбес пишу 'block'
у меня и раньше правильно было
setTimeout("elem.style.display = 'none'",1000);
ну эт если elem определен, тогда естессна, правильно :) а то мало ли куда ты это воткнул )) ты ж весь код не положил ;)
Да нет я без претензий, правдо спасибо !