Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Поместить вначале тег (https://javascript.ru/forum/jquery/60741-pomestit-vnachale-teg.html)

snovapavel 17.01.2016 19:23

Поместить вначале тег
 
Добрый день, и с Новым Годом!

У меня есть контейнер с классом «games» с содержимым (примерным):

<div class="games">
	<span>...</span>
	<div>...</div>

	<strong>...</strong>
	<span>...</span>

	<em>...</em>

</div>


Необходимо вначале каждой строки добавить тег <wbr>, в том числе и перед пустой строкой. Чтобы получилось так:

<div class="games">
<wbr>	<span>...</span>
<wbr>	<div>...</div>
<wbr>
<wbr>	<strong>...</strong>
<wbr>	<span>...</span>
<wbr>
<wbr>	<em>...</em>
<wbr>
</div>


Я пробовал так:

$( "code" ).each(function() {
	var lines = this.innerHTML.split("\n");
	lines = $.map(lines, function(val) {
	return "<wbr>" + (val || "") + "" + "\n"
	});
	$(this).html(lines);
});


но, тогда тег <wbr> добавляется почему-то дважды...

рони 17.01.2016 20:15

Цитата:

Сообщение от snovapavel
<wbr> добавляется почему-то дважды...

может не дважды, а браузер показывает и закрывающий тег?

snovapavel 17.01.2016 20:33

Разве это не одиночный тег?

Просто WordPress некорректно обрабатывает этот скрипт. Как написать проще добавление тега в начале строки? Может быть с помощью регулярки?

рони 17.01.2016 20:49

snovapavel,
для тега <wbr> закрывающий необязателен, но браузеры добавляют

рони 17.01.2016 21:01

Цитата:

Сообщение от snovapavel
Необходимо вначале каждой строки добавить тег <wbr>,

а как же строка 01? почему пропущена?


Часовой пояс GMT +3, время: 04:53.