我最近了解到 xmp 标签的使用,它已被弃用,很多人说使用 pre,或者用
<
、>
等翻译特殊字符
...但这些解决方案对我来说并不好。
实际上,我想将内容放入网页中,并且在我使用 JavaScript 将其复制到其他容器中之前,该内容不会被解释。
目前我只找到了一种解决方案,但它并不是很干净:
<div id="myContent" class="hidden">
<!--MyContent-->
</div>
然后,通过 Javascript,我解析内容以删除评论 html 标签。
您是否找到了更好的解决方案?
注意
自撰写本答案以来,xml 数据岛方法已过时。这反映在 MDN 文档中,该文档取消了讨论细节的页面。
但是,使用 html5 数据块 - 实际上是这个答案的要点 - 是一种更通用的技术(允许使用与 xml 不同类型的数据块,例如 json)。
请参阅此页进行讨论。
回答正确
使用 html 数据岛在 html 中存储任意数据。以下示例显示了一些变化:
可以从 javascript 访问
script
标签,并且可以添加 id
等通用属性以简化访问。
<!-- xml -->
<script type="text/xml">
<data>
<!-- whatever -->
</data>
</script>
<!-- html -->
<script type="text/html">
<a href="http://example.com">example.com</a>
</script>
<!-- plain text -->
<script type="text/plain">
whatever
</script>
<!-- plain text in an xml cdata section (text mustn't contain ']]>') -->
<script type="text/xml">
<plain><![CDATA[...whatever...]]></plain>
</script>