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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Генерация кода таблицы, задаём высоту. ошибочная разметка.. 
:(
    Опции темы
Денис
Дата 8.3.2005, 19:03 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Помогите, пожалуйста, товарищи программисты.
Столкнулся я с такой проблемой. Есть код, находящийся внутри тега script, который работает по разному, в зависимости от места его вставки. Суть кода - надо сделать высоту ячейки/или таблицы TBL123 равной D123.

Код1:
(Этот код, будучи вставленным внутри тега body работает замечательно, и alert показывает значение высоты D123)


Код

<body>
<script language="JavaScript" >
document.write("<Table width=100% border=0 cellspacing=0 cellpadding=0 ><tr><td width=100% id='TBL123' valign=top><div id='D123' style='position:absolute'>");
document.write('123456');
document.write('</div></table>');
document.all['TBL123'].height=document.all['D123'].offsetHeight;
alert(document.all['D123'].offsetHeight);
</script>
</body>


Код2:
(А если вставить этот код внутрь, скажем, table, то возвращается значение undefined)
Код

<body>
<table width=100%><tr><td>
<script language="JavaScript" >
document.write("<Table width=100% border=0 cellspacing=0 cellpadding=0 ><tr><td width=100% id='TBL123' valign=top><div id='D123' style='position:absolute'>");
document.write('123456');
document.write('</div></table>');
document.all['TBL123'].height=document.all['D123'].offsetHeight;
alert(document.all['D123'].offsetHeight);
</script>
</table>
</body>


Параметр style изменять не предлагайте, т.к. вместо 123456 у меня менюшки и возникнет проблема с их позиционированием.
Как разрешить эту проблему???
  Вверх
Aliance
Дата 8.3.2005, 21:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Денис
Ты некорректно задаешь таблицу, нужно так:
Код

<TABLE>
<TR>
 <TD></TD>
 <TD></TD>
</TR>
<TR>
 <TD></TD>
 <TD></TD>
</TR>
</TABLE>

Некорректно закрываешь таблицу smile

Плюс, document.all - это коллекция IE4, зачем ограничиваться IEonly, ведь можно писать W3C DOM`вым методом:
Код

document.getElementById("тут_id_елемента");

PM MAIL WWW ICQ Skype   Вверх
Guest
Дата 9.3.2005, 00:45 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Спасибо! Помогло!
  Вверх
Денис
Дата 9.3.2005, 14:58 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Хотя, сорри, частично помогло. В том примере, что приводил, помогло, но когда попробовал применить к тексту, вызывавшему проблему - проблеме не ушла. Попробовал развернуть код - незакрытых тегов не нашел. Вот листинг, который не работает правильно:

Код

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<link rel=stylesheet type="text/css" href="/styles.css">
<title>...:::localhost:::...</title>
<meta name="Description" content="">
<meta name="Keywords" content="">
<meta name="Author" content="Boenskov Denis">
</head>
<body>
<table width="100%" border="0"><tr><td><img src="images/portal.jpg" align="left" height="200" width="640" ></td></tr></table>

<table width=100%>
    <tr>
        <td>
            hello1
        </td>
    </tr>
</table>

<table cols="3" width="100%" border="0" cellpadding="0" cellspacing="0">
    <tr>
        <td width=200px valign=top>
<!--left panel-->

<script language="JavaScript">

function cool(src) {src.className="TLINK_F";}
function norm(src) {src.className="TLINK";}

function GoTo(ref){if(ref!="") window.location.href=ref;}

</script>

<!--document.write("...");-->
<Table width=100% border=0 cellspacing=0 cellpadding=0>
    <tr>
        <td id='TBL896359297' width=100% valign=top>
            <div id='D896359297' style='position:absolute'>
            
<!--begin_menu('100%');-->
                <table class='menu' width='100%' cellspacing=0 cellpadding=6 >
                    <tr>

<!--create_link('100','/sql/index.php','phpAdmin');-->
                        <td width='100%' class='TLINK' onclick=GoTo('/sql/index.php') onmouseover=cool(this) onmouseout=norm(this)>
                            <a class='mnu' href='/sql/index.php'>
                                <div>phpAdmin</div>
                            </a>
                        </td>
<!--tr();-->
                    </tr>
                    <tr>


<!--create_link('100','/?exit','Выход');-->
                        <td width='100%' class='TLINK' onclick=GoTo('/?exit') onmouseover=cool(this) onmouseout=norm(this)>
                            <a class='mnu' href='/?exit'>
                                <div>Выход</div>
                            </a>
                        </td>

<!--end_menu();-->
                    </tr>
                </table>
<!--document.write('</div></td></tr></table>');-->
            </div>
        </td>
    </tr>
</table>

<script language="JavaScript">
alert(document.getElementById('D896359297').offsetHeight);
</script>


hello2
        </td>
        <td valign=top>
            #
        </td>
        <td width=100 valign=top>
<!--right--->
            #
        </td>
    </tr>
</table>

<center><b>©</b></center>
</body></html>


Где
Код

table.menu{border: 1px solid #CCFFFF}
.TLINK {CURSOR: hand; font: bold 12; background: #E6FFFE; border: 1px solid #D8D8D8; color: navy}
.TLINK_F {CURSOR: hand; font: bold 12; background: #5FD9DF; border: 1px solid #D8D8D8; color: white}

  Вверх
Aliance
Дата 10.3.2005, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Цитата
<table width="100%" border="0"><tr><td><img src="images/portal.jpg" align="left" height="200" width="640" ></td></tr></table>

А тут разве нет ошибок?

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


 




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


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

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