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

HTML+CSS+JavaScript

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

 

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

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

тема: Возможен ли такой синтаксис?
 
 автор: coloboc66   (17.08.2007 в 09:46)   письмо автору
 
 


var _table=document.createElement('table id=1 width=20% height=30%')

Или нужно все атрибуты устанавливать отдельно?

   
 
 автор: SHAman   (17.08.2007 в 11:32)   письмо автору
 
   для: coloboc66   (17.08.2007 в 09:46)
 

По-моему, отдельно. ведь для аттрибутов есть отдельный тип узлов даже...

   
 
 автор: sim5   (17.08.2007 в 11:49)   письмо автору
 
   для: coloboc66   (17.08.2007 в 09:46)
 

Вообще же:
createElement() - создает ссылку на пустой элемент (есть только дескриптор)
setAttribute() - устанавливает атрибуты созданному элементу.
ID - не должно начинаться с цифры.

   
 
 автор: coloboc66   (19.08.2007 в 09:26)   письмо автору
 
   для: sim5   (17.08.2007 в 11:49)
 

"ID - не должно начинаться с цифры" - я просто не взял её в кавычки, опечатка. Насколько я понимаю, ID может быть числом, только его нужно взять в кавычки, чтобы оно интерпретировалось как строка.

   
 
 автор: AlexSol   (19.08.2007 в 09:43)   письмо автору
 
   для: coloboc66   (19.08.2007 в 09:26)
 

не может.

   
 
 автор: coloboc66   (19.08.2007 в 10:09)   письмо автору
 
   для: AlexSol   (19.08.2007 в 09:43)
 

Ну как не может, когда может:

<input type=text id="1" value="hello" onclick="alert(document.getElementById('1').value+' типа '+typeof(this.id))" />

   
 
 автор: Shiva   (19.08.2007 в 11:12)   письмо автору
 
   для: coloboc66   (19.08.2007 в 10:09)
 

Может, может...)

   
 
 автор: Madman   (17.08.2007 в 19:21)   письмо автору
 
   для: coloboc66   (17.08.2007 в 09:46)
 

Правильнее всего будет написать так:
var _table=document.createElement('table');
with (_table) {
    id='t1';
    width='20%';
    height='30%';
}


И действительно, не начинайте ID с цифры.

   
 
 автор: bronenos   (19.08.2007 в 06:22)   письмо автору
 
   для: Madman   (17.08.2007 в 19:21)
 

with много памяти жрет

   
 
 автор: CNT   (19.08.2007 в 17:04)   письмо автору
 
   для: bronenos   (19.08.2007 в 06:22)
 

Точно знаете?
Проверяли?
А как "расход памяти" проверяется?

Вопрос без всякого "подкола" - я просто над этим никогда не задумывался. И даже не представляю себе - как это проверитьможно. Быстродействие - проверяется легко: задал браузеру задачу выполнить полмиллиона раз что-то с одним оператором, а затем тоже самое - с другим и проверяй разницу во времени выполнения. А вот память?!?!? Как?

   
 
 автор: CNT   (17.08.2007 в 19:32)   письмо автору
 
   для: coloboc66   (17.08.2007 в 09:46)
 

Можно и так.
В документации написано - Attributes can be included with the string that specifies the name of an element as long as the entire string is valid HTML - т.е., в скобках должно быть строка, содержащая или имя создаваемого тега, или же валидный HTML-код этого тега.

   
 
 автор: Madman   (17.08.2007 в 19:48)   письмо автору
 
   для: CNT   (17.08.2007 в 19:32)
 

>В документации написано - Attributes can be included with the string that specifies the name of an element as long as the entire string is valid HTML - т.е., в скобках должно быть строка, содержащая или имя создаваемого тега, или же валидный HTML-код этого тега.

А на практике пытались сделать что-нибудь подобное?
К несчастью ни

    var table = document.createElement('<table width="600px" height="100px" bgcolor="#000"></table>');


ни


    var table = document.createElement('table width="600px" height="100px" bgcolor="#000"');


не канают! ИЕ даже создает элемент при втором виде записи, только атрибуты не цепляет!!!!

   
 
 автор: CNT   (17.08.2007 в 20:05)   письмо автору
 
   для: Madman   (17.08.2007 в 19:48)
 

Да всё "цепляет".
Просто MSIE никогда не отображает корректно таблицу, если в ней нет ячеек, а в ячейке нет наполнения:
<html><head><script>
onload = function ()
{
var tbl = document.createElement ('<table width="600px" height="100px" bgcolor="#efefef" style="border: 1px solid red">')
var ro = tbl.insertRow ();
var ce = ro.insertCell ();
ce.innerHTML = 'таблица';
document.body.appendChild (tbl);
}
</script></head><body></body></html>


PS. А второй ваш вариант как раз нерабочий, ибо в скобках не валидный HTML - символов < и > нету.

   
Rambler's Top100
вверх

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