За последние 24 часа нас посетили 17545 программистов и 1723 робота. Сейчас ищет 1671 программист ...

Помогите с DOM

Тема в разделе "JavaScript и AJAX", создана пользователем pr0n1x, 27 окт 2006.

  1. pr0n1x

    pr0n1x Активный пользователь

    С нами с:
    30 мар 2006
    Сообщения:
    486
    Симпатии:
    2
    Адрес:
    Киев
    У меня есть таблица в таблице есть ячейка с id="main". Как мне с помощью DOM добавить в эту ячейку несколько элемент DIV в цикле.
    И так, чтобы каждый элемент располагался не в конце ячейки, а в начале ее. То есть, например если добасили 10 элементов DIV то 1-й элемент будет в конце ячейки, а 10-й элемент будет в начале ячейки?
     
  2. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    плохо знаю дум(дом), но вроде должно работать:
    Код (Text):
    1. main = document.getElementById('main');
    2. main.innerHTML = '<DIV>Какой-ть текст</DIV>'+main.innerHTML
     
  3. Davil

    Davil Guest

    Это надо спроектировать цикл, который будет так добавлять. А потом готовую строку добавить так, как сказал topas.
     
  4. Mavir

    Mavir Guest

    А зачем проектировать? В цикле добавляй в начало слой и все.
    Код (Text):
    1.  
    2. for(i=0;i<10;i++){
    3. txt = document.getElementById('main').innerHTML;
    4. document.getElementById('main').innerHTML = '<DIV>'+i+'</DIV>'+txt;
    5. }
     
  5. Davil

    Davil Guest

    Mavir вот ты его и спроектировал =)
     
  6. simpson

    simpson Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    1.650
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    вопрос не по теме, но по существу..
    pr0n1x, ты когда-нибудь сам думать и искать начнешь? или так и будешь просить готовых решений?
     
  7. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    innerHTML это конечно весело, но DOMом здесь не пахнет никаким.
     
  8. AlexGousev

    AlexGousev Активный пользователь

    С нами с:
    25 мар 2006
    Сообщения:
    1.505
    Симпатии:
    0
    Адрес:
    Москва
    Это точно. Если делать согласно DOM, то:
    Код (Text):
    1. var main = document.getElementById('main');
    2. for(i=0;i<10;i++) {
    3.    var txt = document.createTextNode('Строка номер '+i);
    4.    var div = document.createElement('div');
    5.    div.appendChild(txt);
    6.    if (main.childNodes.length)
    7.       main.insertBefore(div, main.childNodes.item(0));
    8.    else
    9.       main.appendChild(div);
    10. }
    А то свойства такого innerHTML в DOM нет: http://www.w3.org/DOM/DOMTR