Обернуть каждую строку в контейнере в тег
Добрый вечер!
Есть конструкция вида: <pre class="single_pre_tag"> Ехал Грека через реку. Видит Грека в реке рак. Сунул в реку руку Грека. Рак за руку Грека - цап. </pre> Мне необходимо обернуть каждую строку в <code>, чтобы получилось так: <pre class="single_pre_tag"> <code>Ехал Грека через реку.</code> <code>& # 9 ;</code> <code>Видит Грека в реке рак.</code> <code>Сунул в реку руку Грека.</code> <code>& # 9 ;</code> <code>Рак за руку Грека - цап.</code> </pre> Я нашёл вот такой код:
$( '.single_pre_tag' ).each(function () {
var lines = $( this ).html().split( '\n' );
$( this ).html( '<code>' + lines.join('</code><code>') + '</code>' );
});
Но он напрочь игнорирует пустые строки и выбрасывает их... Как дописать сюда поддержку пустых строк (<code>& # 9 ;</code>)? Заранее благодарю! |
snovapavel,
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
code {
display: block;
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
$(function() {
$(".single_pre_tag").each(function() {
var lines = this.innerHTML.split("\n");
lines = $.map(lines, function(val) {
return "<code>" + (val || "& # 9 ;") + "</code>"
});
$(this).html(lines)
})
});
</script>
</head>
<body>
<pre class="single_pre_tag">
Ехал Грека через реку.
Видит Грека в реке рак.
Сунул в реку руку Грека.
Рак за руку Грека - цап.
</pre>
</body>
</html>
|
рони,
Огромное спасибо! |
| Часовой пояс GMT +3, время: 08:03. |