Javascript 转换为文本,但保留dom布局

Javascript 转换为文本,但保留dom布局,javascript,jquery,html,Javascript,Jquery,Html,我正在使用$(selector.HTML()获取DOM HTML

我正在使用
$(selector.HTML()获取DOM HTML$(选择器).empty().text($(选择器).html())

我的问题是
text()将html转换为纯文本而不进行任何格式化,是否可以将文本格式化为dom中的样子


我将所有内容都插入到一个pre元素中,因此使用html()使它认为应该像处理任何其他html标记一样处理它

像这样:


(不带箭头隐藏功能)

如果您只想从
$(选择器).html()
保留DOM,那么您可以只
.html
而不是
.text

$(selector).empty().html($(selector).html());
如果您只希望保留某些标记,则可以使用此替换代码()除去所有标记,替换方法中的标记除外:

rawHTML = $(selector).html().replace(/<\/?[br|li|ol|ul]+\/?>/igm,'');
$(selector).empty().html(rawHTML);
rawHTML=$(选择器).html().replace(//igm',);
$(选择器).empty().html(原始html);

如果您希望文本保持html格式,可以尝试以下方法

x = $(selector).html();
$(selector).text(x);
这将导致显示html标记

e、 g.下一行将把正文的html转储到正文中,以便用标记查看

$("body").text($("body").html())

你能发布你正在做的事情的代码吗?这个问题不明白,请重新表述第二部分,我正在将所有内容插入一个pre元素,这样一个HTML标记将被解释为HTML代码,从而使HTML()函数无法工作。在这种情况下,请尝试一个类似于格式化(漂亮打印)你的HTML的插件;在这种情况下,xml格式化程序应该适合您。