如何在没有 xmp 标签的情况下工作[重复]

问题描述 投票:0回答:1

我最近了解到 xmp 标签的使用,它已被弃用,很多人说使用 pre,或者用

<
>
等翻译特殊字符

...但这些解决方案对我来说并不好。

实际上,我想将内容放入网页中,并且在我使用 JavaScript 将其复制到其他容器中之前,该内容不会被解释。

目前我只找到了一种解决方案,但它并不是很干净:

<div id="myContent" class="hidden">
    <!--MyContent-->
</div>

然后,通过 Javascript,我解析内容以删除评论 html 标签。

您是否找到了更好的解决方案?

javascript html tags xmp
1个回答
1
投票

注意

自撰写本答案以来,xml 数据岛方法已过时。这反映在 MDN 文档中,该文档取消了讨论细节的页面。

但是,使用 html5 数据块 - 实际上是这个答案的要点 - 是一种更通用的技术(允许使用与 xml 不同类型的数据块,例如 json)。

请参阅此页进行讨论。

回答正确

使用 html 数据岛在 html 中存储任意数据。以下示例显示了一些变化:

  1. xml数据
  2. html 数据
  3. 任意文本
  4. 表示为 xml cdata 部分的任意文本

可以从 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>

MDN 上曾经有一篇文章讨论了已退役的技术(请参阅此答案的初始注释)。请参阅此处

© www.soinside.com 2019 - 2024. All rights reserved.