Каков был бы лучший способ просканировать канавку весь DOM, найти какой-либо элемент, которые имеют текст и переносят его в класс промежутка? Спасибо
Чтобы обернуть все текстовые узлы, содержащие что-то кроме пробелов:
$('body *').contents().filter(function() {
return (this.nodeType == 3) && this.nodeValue.match(/\S/);
}).wrap("<span />")
Чтобы обернуть все текстовые узлы, включая те, которые содержат только пробелы:
$('body *').contents().filter(function() {
return (this.nodeType == 3) && this.nodeValue.length > 0;
}).wrap("<span />")
Вы можете использовать .each для перебора всех элементов:
$('*').each(function(){
if($(this).text())
{
$(this).wrapInner('<span />');
}
})
Я не тестировал этот фрагмент кода, но он довольно простой. Все, что вам нужно узнать, это .each , wrapInner и * селектор. Здесь очень полезны документы jQuery.