Перейти к публикации
webil

Javascript Удаление тега <BR>

Рекомендованные сообщения

webil

Есть код:

 

<span>
	<b><div align="center"><img src="img/img2.jpg" style="width: 400px;"/></div></b>
	<br>
	<br>
	Waiting in car<br>
	waiting for a ride in the dark<br>
	...<br>
	<br>
	Waiting in a car<br>
	Waiting for a ride in the dark<br>
	Drinking in the lounge<br>
	Following the neon signs<br>
	<br>
	Waiting for a ride<br>
	Looking at a milky skyline<br>
	The city is my church
</span>

 

И меня интересует как при помощи js удалить все теги <br> между строчками:

 

<b><div align="center"><img src="img/img2.jpg" style="width: 400px;"/></div></b>

 

и

 

Waiting in car<br>

 

число тегов <br> может быть и больше, а строчка ниже может быть другой

Изменено пользователем webil

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
TheAndrey

Все теги br нужно удалить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
webil

Все теги br нужно удалить?

 

только те что тут:

 

<b><div align="center"><img src="img/img2.jpg" style="width: 400px;"/></div></b>
<br>
<br>
Waiting in car
Изменено пользователем webil

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
TheAndrey

 

Все теги br нужно удалить?

Можно всё. Надо было сказать: "удалить повторяющиеся теги" - так понятнее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
webil

@Andrey, тьфу ты блин, это цитата была... подправил...

 

 

удалить повторяющиеся теги

 

Нет, там может быть и один тег, мне нужно удалить <br> который идет после:

<b><div align="center"><img src="img/img2.jpg" style="width: 400px;"/></div></b> 

 

если перед ним нет текста

Изменено пользователем webil

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
TheAndrey

text - это переменная с текстом.

text = text.replace(/<br>[\s]+<br>/gm, "<br>");

p.s. Удаляет только если встречаются по 2 тега. Если больше нужно - оберни в цикл for.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
webil

text - это переменная с текстом.

text = text.replace(/<br>[\s]+<br>/gm, "<br>");

p.s. Удаляет только если встречаются по 2 тега. Если больше нужно - оберни в цикл for.

 

Похоже ты меня не понял)

 

я вот об этом говорил:

 

 

Если было так:

<span>
	<b><div align="center"><img src="img/img2.jpg" style="width: 400px;"/></div></b>
	<br>
	<br>
	Waiting in a car<br>
	Waiting for a ride in the dark<br>
	Drinking in the lounge<br>
	Following the neon signs<br>
	<br>
	<br>
	Waiting for a ride<br>
	Looking at a milky skyline<br>
	The city is my church
</span>

 

или так:

<span>
	<b><div align="center"><img src="img/img2.jpg" style="width: 400px;"/></div></b>
	<br>
	Waiting in a car<br>
	Waiting for a ride in the dark<br>
	Drinking in the lounge<br>
	Following the neon signs<br>
	<br>
	<br>
	Waiting for a ride<br>
	Looking at a milky skyline<br>
	The city is my church
</span> 

 

или даже так так:

<span>
	<b><div align="center"><img src="img/img2.jpg" style="width: 400px;"/></div></b>
	<br>
	<br>
	<br>
	Waiting in a car<br>
	Waiting for a ride in the dark<br>
	Drinking in the lounge<br>
	Following the neon signs<br>
	<br>
	<br>
	Waiting for a ride<br>
	Looking at a milky skyline<br>
	The city is my church
</span> 

 

должно стать так:

<span>
	<b><div align="center"><img src="img/img2.jpg" style="width: 400px;"/></div></b>
	Waiting in a car<br>
	Waiting for a ride in the dark<br>
	Drinking in the lounge<br>
	Following the neon signs<br>
	<br>
	<br>
	Waiting for a ride<br>
	Looking at a milky skyline<br>
	The city is my church
</span> 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Arteom

if($("b").next("br").length){
   $("b").next("br").remove();
}

не проверял, для нескольких br нужен цикл

 

while($("b").next("br").length){
	$("b").next("br").remove();
}

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
webil

@Arteom , не подходит т.к. там может и не быть тега <br>

если бы все было так просто я бы даже не спрашивал... Увы тут нужен другой вариант

Изменено пользователем webil

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Arteom

@webil, если его не будет он ничего не сделает. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
TheAndrey

 

while($("b").next("br").length){
	$("b").next("br").remove();
}

 

Браузер будет лагать.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
webil

@Arteom , При цикле...... ну да при цикле, он удалит вообще все br...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Arteom

@webil, не до конца проверил)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
TheAndrey

@Arteom , При цикле...... ну да при цикле, он удалит вообще все br...

Это будет бесконечный цикл.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Arteom

@Andrey, не согласен, цикл будет повторяться пока после <b> будет <br> 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Celsoft

Если кол-во br неизвестно и строка может меняться, то тут по идее ни как и не сделаешь.

Почему именно на js. Что это за код? Откуда?

Опиши задачу подробнее.

 

Либо как-то проверять текст или нет. В вырезать все теги br между началом и текстом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
webil

грубо говоря это краткая новость, когда пользователь вставляет картинку а после делает отступ от нее и добавляет описание образуется отступ между картинкой и описанием, так вот мне нужно сделать так чтоб если отступы имелись между описанием и картинкой они удалялись. 

Почему js - потому что нет возможности править движок.
Есть у меня мысль но я не знаю как её реализовать обернуть первый строчный символ в тег span и потом уже при помощи next() и  for удалить br перед этим появившимся спаном, но я не знаю как окружит первый символ или слово тегом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Celsoft

css есть возможность править? если да, то двигай изображение блике к тексту и все.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
webil

@Celsoft, нет, тоже не вариант, если бы это было возможно я бы так и сделал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Celsoft

Тогда остается проверять на текст как я выше писал. По крайней мере я так думаю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...