我正在$(selector).html();
使用此操作获取 DOM HTML 并将其转换为文本$(selector).empty().text($(selector).html());
。
我的问题是text();
将html转换为没有任何格式的纯文本,是否可以将文本格式化为dom中的样子?
我将所有内容都插入到 pre 元素中,因此 html() 使其认为它应该像处理任何其他 html 标签一样处理它。
像这样:
(没有箭头隐藏功能)
我正在$(selector).html();
使用此操作获取 DOM HTML 并将其转换为文本$(selector).empty().text($(selector).html());
。
我的问题是text();
将html转换为没有任何格式的纯文本,是否可以将文本格式化为dom中的样子?
我将所有内容都插入到 pre 元素中,因此 html() 使其认为它应该像处理任何其他 html 标签一样处理它。
像这样:
(没有箭头隐藏功能)
如果您只想让 DOM 远离$(selector).html()
,那么您可以.html
代替.text
:
$(selector).empty().html($(selector).html());
如果您只想保留某些标签,那么您可以使用这个替换代码(从这里)去除所有标签,除了替换方法中的标签:
rawHTML = $(selector).html().replace(/<\/?[br|li|ol|ul]+\/?>/igm,'');
$(selector).empty().html(rawHTML);
如果您希望文本保持 html 的格式,您可以尝试以下操作
x = $(selector).html();
$(selector).text(x);
这将导致显示 html 标记。
例如,以下行会将正文的 html 转储到要使用标签查看的正文中。
$("body").text($("body").html())