Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.04.2009, 17:18
Новичок на форуме
Отправить личное сообщение для rar11 Посмотреть профиль Найти все сообщения от rar11
 
Регистрация: 01.04.2009
Сообщений: 9

Как поменять местами элементы в дереве элемента родителя?
Есть DIV, в котором находятся другие DIV'ы. В этих же дивах находятся элементы типа INPUT и TEXTAREA. Хочу узнать, возможно ли в дереве главного дива изменить порядок расположения дочерних элементов (дивов). Скажем мне надо поменять местами какие-нибудь два дива. При этом, хорошо бы, что бы введенные данные в элементах INPUT и TEXTAREA не исчезли при смене.
Берем див: var div = document.getElementById('parentDiv');
С помощью div.childNodes[i] я могу получить любой дочерний див. Вот я и спрашиваю, есть ли методы реализации моего вопроса.
Ответить с цитированием
  #2 (permalink)  
Старый 01.04.2009, 17:30
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Любой dom-узел можно вставить в другое место с помощью методов appendChild и insertBefore, их состояние при этом не изменится.
Ответить с цитированием
  #3 (permalink)  
Старый 01.04.2009, 17:43
Новичок на форуме
Отправить личное сообщение для rar11 Посмотреть профиль Найти все сообщения от rar11
 
Регистрация: 01.04.2009
Сообщений: 9

А можно ссылку на какой-нибудь примерчик или на документацию? Спасибо.
Ответить с цитированием
  #4 (permalink)  
Старый 01.04.2009, 17:51
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Ну допустим где-то в середине страницы есть элемент с id=test, тогда после выполнения следующего кода он окажется в конце страницы
document.body.appendChild(document.getElementById('test'));


Метод insertBefore первым параметром принимает вставляемый элемент, вторым элемент, перед которым нужно вставить.

З.Ы. С документацией яндекс поможет
Ответить с цитированием
  #5 (permalink)  
Старый 01.04.2009, 17:55
Новичок на форуме
Отправить личное сообщение для rar11 Посмотреть профиль Найти все сообщения от rar11
 
Регистрация: 01.04.2009
Сообщений: 9

Спасибо. Буду разбираться.

Однако, если у кого есть какие-то мысли - просьба излагать
Ответить с цитированием
  #6 (permalink)  
Старый 01.04.2009, 18:11
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Мысли о чем?
Ответить с цитированием
  #7 (permalink)  
Старый 01.04.2009, 18:29
Новичок на форуме
Отправить личное сообщение для rar11 Посмотреть профиль Найти все сообщения от rar11
 
Регистрация: 01.04.2009
Сообщений: 9

А случайно нет метода что бы вставить не перед, а после нужного элемента?
Ответить с цитированием
  #8 (permalink)  
Старый 01.04.2009, 18:39
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Для этого нужно вставить перед следующим
А следующий это свойство nextSibling у нужного элемента.
Ответить с цитированием
  #9 (permalink)  
Старый 01.04.2009, 18:53
Новичок на форуме
Отправить личное сообщение для rar11 Посмотреть профиль Найти все сообщения от rar11
 
Регистрация: 01.04.2009
Сообщений: 9

Спасибо.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как передеть css файл родителя фрейму? Zeal Events/DOM/Window 9 21.10.2008 16:47
Как поменять SRC у Img в Pocket IE Maxidrom Events/DOM/Window 2 08.10.2008 15:05
как определить позицию элемента относительно окна scuter Events/DOM/Window 5 07.05.2008 18:47