Показать сообщение отдельно
  #1 (permalink)  
Старый 07.12.2011, 13:22
Аватар для Dudo4nick
Интересующийся
Отправить личное сообщение для Dudo4nick Посмотреть профиль Найти все сообщения от Dudo4nick
 
Регистрация: 20.07.2011
Сообщений: 23

Вставить элемент пред другим элементом?
Здравствуйте!
Вот такой html
<div id="tree">
 <div>node</div>
 <div>node</div>
 <div>node</div>...
 </div>


Надо добавить span перед вложенными div'ами. Юзал, insertBefore, но, очевидно, делаю что-то не так:

var elems = document.getElementById("tree").getElementsByTagName("div");
var num = elems.length;

for(var i=0; i<num; i++) {
	plus = document.createElement('span');
	plus.innerHTML = '+';
			
	elems[i].insertBefore(plus,elems[i]);
	
}


Вот это самое
elems[i].insertBefore(plus,elems[i])
не работает. Зато работает
elems[i].insertBefore(plus,elems[i].firstChild);
Но это не то, что мне нужно. Получается
<div>
<span>+</span>
node
</div>

А надо
<span>+</span><div>
node
</div>
Ответить с цитированием