我需要在展开/展开div中显示提取的html内容(仅HTML,没有JS),但提取的内容不是有效的'所有时间它可能有比它应该更多的结束div,因此它关闭我的UI的div并打破UI。 除了iframe之外,这个问题有什么解决方案吗?也许是一个js库来消毒这种内容。我正在使用AngularJS和boostrap。 我认为它也可以使用Shadow DOM完成,但我不确定它是如何工作/可以完成的,所以我想知道是否有任何使用阴影dom的扩展/崩溃插件。
答案 0 :(得分:0)
你可以创建一个off-page div,在那里添加你的(可能是无效的)HTML内容,让HTML解析器处理所有事情,然后再次获取元素的innerHTML
并放入你的页面:
var div = document.createElement( 'div' );
div.innerHTML = '<div></div><span>h</span></div>'; // whatever your content
console.log( div.innerHTML );
// will output "<div></div><span>h</span>" for the example