kukaew
@kukaew

Как обойти все узлы внутри родителя (детей, внуков, правнуков, ...)?

Здравствуйте. Пробовал рекурсию. Но первый же return заканчивает функцию, а без него - вечный цикл.

Вот: jsfiddle.net/kukaew/n6qpw2ga

Спасибо.

<mark class="obj"><u><a>т</a><strike><b>уп</b><a>и</a></strike><a>к</a></u></mark>

<div id=w></div>

var obj = document.getElementsByClassName('obj')[0];

Recurs(obj);

function Recurs(obj) {
	if ( obj.nodeType === 3) w.innerText = w.innerText + obj.textContent;	
	else for (i = 0; i < obj.childNodes.length; i++) return Recurs(obj.childNodes[i]);
}
  • Вопрос задан
  • 119 просмотров
Решения вопроса 2
Stalker_RED
@Stalker_RED
https://jsfiddle.net/p22264uz/

а текст копируется вообще одной строчкой, без всяких рекурсий https://jsfiddle.net/xr9wh0v4/
Ответ написан
Уберите return и избавьтесь от глобальной переменной i

for (var i = 0;

https://jsfiddle.net/zspe25p4/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
21 нояб. 2024, в 19:31
500 руб./за проект
21 нояб. 2024, в 19:28
200000 руб./за проект
21 нояб. 2024, в 19:09
5000 руб./за проект