Javascript HTML 转义但保留换行符
Javascript HTML escaping but preserving linebreaks
我写了一个小的jQuery脚本来帮助我构建一个样式指南。该脚本用于复制和转义一段 HTML,并将其打印为文档。但是,我的问题是在 html 中反转换行符。我希望我的转义 HTML 像我键入它一样格式化。这怎么可能?
$('.documentation-element').each(function() {
var HTML = $(this).html();
$(this).next().find('code').text(HTML).html();
});
在此处查看完整示例:http://jsfiddle.net/tolborg/nr7fs/
将text()
方法更改为html()
:
$(this).next().find('code').html(HTML);
JSFiddle
您使用的是 <code>
标记,但这不会保留换行符。您需要一个<pre>
标签。因此,将<code>
标签包装在<pre>
标签中,您的代码应该按原样工作 - 除了您不需要最后的额外.html()
(它不会伤害任何东西,它只是不做任何事情):
$('.documentation-element').each(function() {
var HTML = $(this).html();
$(this).next().find('code').text(HTML);
});
这是一个更新的小提琴。
您可能还想调整每行的前导空格,但您想要的内容将取决于您想要的输出。
例如,下面是一个去除前导空格并删除开头和结尾多余换行符的版本:
$('.documentation-element').each(function() {
var HTML = $(this).html().trim().replace( /'n's+/, ''n' );
$(this).next().find('code').text(HTML);
});
相关文章:
- 如何在映射数组中添加换行符
- JQuery:向多个匹配结果添加换行符的最简单方法
- 在文本区域中保留换行符.value
- 通过javascript保留文本区域换行符
- 如何从保留换行符的 window.prompt() 返回文本
- 是否有任何保留换行符的 JavaScript 缩小器
- 仅删除空换行符,保留空格
- 获取不带 html 标记的页面元素文本,但保留换行符
- Javascript HTML 转义但保留换行符
- 删除文本中的空格,同时保留换行符
- 在AngularJS中保留换行符
- 剥离HTML,保留mailto标记的换行符
- 在粘贴到文本区域时保留javascript字符串的换行符
- 从文本区获取文本时,如何保留换行符?
- 将所有空格替换为一个,但保留换行符
- 需要保留从用户输入的文本区域到电子邮件正文的换行符
- 如何在Firefox中保留textContent的换行符
- 使用range保留选择中的换行符和回车符?Javascript / jquery
- 从 DOM 保留换行符中提取无格式文本的最佳方法
- 在对文本应用新样式时保留文本区域的换行符