Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как правильно вставить результат работы скрипта в HTML-код?
 
 автор: Petter   (03.05.2008 в 20:32)   письмо автору
 
 

Есть таблица, в ней три ячейки с нефиксированной шириной и одна с фиксированной.

<td width=" "><td><td width=" "><td><td width="50"><td><td width=" "><td>


И есть скрипт

<script>
w = screen.Width;
x = ((w-50)/3));
</script>


Как правильно подставить значение x в ширину ячейки?

   
 
 автор: coloboc66   (03.05.2008 в 23:29)   письмо автору
 
   для: Petter   (03.05.2008 в 20:32)
 

Где-то примерно так:

<td width=" "><td><td width=" "><td><td width="50"><td><td id="my_td" ></td>
<script>
w = screen.Width; 
x = ((w-50)/3));
document.getEementById("my_td").width=x;
</script>

   
 
 автор: Petter   (04.05.2008 в 12:38)   письмо автору
 
   для: coloboc66   (03.05.2008 в 23:29)
 

Спасибо, конечно, но...

В этом случае ячейки не получаются равными по ширине...
Как сделать их равными, но при этом не писать значение их ширины, а подставить значение работы скрипта, чтобы оно было равным для каждой ячейки с нефиксированной шириной?

<table border="1" width="100%"> 
<tr> 
<td width="50">1</td>
<td Id="my_td">88888888888888888888888888</td>
<td  Id="my_td">88888888</td>
<td Id="my_td">888</td> 
</tr> 
</table>
<script>  
w = screen.Width;  
x = ((w - 50) / 3); 
document.getElementById("my_td").width=x;  
</script>

А так ячейки разные...

   
 
 автор: coloboc66   (04.05.2008 в 22:13)   письмо автору
 
   для: Petter   (04.05.2008 в 12:38)
 

Так, должно быть:
<table border="1" width="100%">  
<tr>  
<td >1</td> 
<td >88888888888888888888888888</td> 
<td >88888888</td> 
<td >888</td>  
</tr>  
</table>
<script>
w = screen.Width;   
x = ((w - 50) / 3);  
var td=getElementsByTagName('td');
for (var i=0;i<td.length;i++) td[i].setAttribute('width',x);
</script>

Но нужно тестировать.

   
 
 автор: Petter   (05.05.2008 в 00:11)   письмо автору
 
   для: coloboc66   (04.05.2008 в 22:13)
 

Спасибо, вроде бы все по теории, однако задачка не решается. Ячейки получаются разные.

   
 
 автор: coloboc66   (05.05.2008 в 00:29)   письмо автору
 
   для: Petter   (05.05.2008 в 00:11)
 

Ячейки и будут разные, если вы будете пытаться всунуть в них длинные слова без пробелов. Не нужно издеваться над броузером, если у вас одно слово состоит из 200 знаков, тогда потрудитесь разделить его скриптом перед тем, как поместить в ячейку.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования