>Всем доброго времени суток.
>Вообще, я программист, но с JavaScript опыта большого нет. Поэтому не судите
>слишком строго, если буду нести ярунду.
>
>Вопрос такой. В php формируется текст страницы, который содержит в себе элемент типа <div id="div1">blablabla</div>.
>Нужно в Javascript узнать высоту элемента(или нижнюю границу)? document.getElementById( "div1" ).style.height выдаёт
>пусто. Определить размер дива в пхп нельзя. Контент заранее неизвестен.
>
>Возникает опасение, что этого сделать нельзя, но я рассуждаю примерно так: браузер,
>при рендеринге страницы определяет размер дива, значит, она известна браузеру, но
>вот как к ней добраться?
>
>Будут ли предложения?
могу предложить воспользоваться вот такой простенькой JavaScript функцией:
<script>
function viewObject(name)
{
var obj = eval(name), i;
if(!obj)
{
alert("\""+name+"\" ia not an object");
return;
}
var w_Test = open("","Test","width=600,height=500,scrollbars=1");
if(!w_Test)
{
alert("Cannot open window for "+name);
return;
}
w_Test.document.open();
for(i in obj)
w_Test.document.write(name+"."+i+"="+obj[i]+"<br>");
w_Test.document.close();
}
</script>
просто временно добавьте ее к выходному HTML и вызовите ПОСЛЕ того, как отрисуется ваш div:
<script>
viewObject(document.getElementById('div1'));
</script>
октроется попап с описанием свойств объекта. Функцию также можно натравливать на определенные массивы свойст объекта, например:
<script>
viewObject(document.getElementById('div1').style);
</script>
Очень удобно. Если смотреть в разных браузерах, то видно, чем отличается описание объекта в них.
Конретно по вашему примеру, насколько я помню, высоту вашего дива можно узнать вот таким образом:
<script>
alert(document.getElementById('div1').offsetHeight);
</script>
т.е. место, занимаемое объектом по высоте;