Доброе утро!
У меня задача, обернуть каждое слово в строке в span.
<div class="mainSlideContent">
Мы подключим все возможные каналы<br>
для продвижения Вашего сайта
</div>
Моя реализация
var mainSlideWordWrap = function(){
var
i,
mainSlideContent = $('.mainSlideContent');
// Переберём все блоки контента и обернём слова в span
mainSlideContent.each(function(index, el) {
var
slide = $(this), // Текущий слайд
slideText = $(this).text().trim().split(' '), // Массив слов каждого слайда
slideTextLength = slideText.length; // Длина каждого массива
// Пройдёмся по каждому слову и обернём его в span
for (i = 0; i <= slideTextLength; i++) {
console.log('<span class="mainSlideWordWrap">'+ slideText[i] + '</span>');
}
});
};
Но вот, чет я не заметил, что у меня же есть в строке
br и он же еще и заносится в массив. Как сделать, что бы не вносить его в массив, да и еще при обёртке слов
span оставить его на месте?
Должно стать, как я думаю вы догадались так:
<div class="mainSlideContent">
<span>Мы</span>
<span>подключим</span>
<span>все</span>
<span>возможные</span>
<span>каналы</span>
<br>
<span>для</span>
<span>продвижения</span>
<span>Вашего</span>
<span>сайта</span>
</div>
Вот
готовый фиддл