【问题标题】:Why are javascripts sometimes surrounded by these tags?为什么 javascript 有时会被这些标签包围?
【发布时间】:2010-04-27 04:48:19
【问题描述】:

为什么有些 JavaScript 会封装在这些标签中:

<!--//--><![CDATA[//><!--

some js here

//--><!]]>

【问题讨论】:

  • 您只能在 html 文件中使用它们。所有现代浏览器都不再需要它,但是如果您使用某些字符,w3c 验证器就会这样做

标签: javascript


【解决方案1】:

&lt;![CDATA[//&gt; 是为了防止 XML 解析器阻塞脚本。

&lt;!-- ... --&gt; 不是必需的,除非您使用的是 Netscape 1.0。

见:Does it still make sense to use HTML comments on blocks of JavaScript?

【讨论】:

    【解决方案2】:

    它使它成为validXHTML

    【讨论】:

      【解决方案3】:

      它们用于不理解&lt;script&gt; 标签的旧浏览器。这样,如果浏览器没有正确读取 JavaScript,它只会将其呈现为评论而不显示在页面上。

      它还允许 JavaScript 代码位于有效的 XHTML 页面中,而不必转义在 XML 中无效的字符。

      【讨论】:

      • 我试图思考这个问题。不是我所知道的,但我想你仍然会遇到使用它的人....虽然它不会(很可能)呈现今天的任何现代页面。
      • XHTML 模式下的任何现代浏览器除外。这是在 &lt;script&gt; 标签中转义所有 &lt;s 和 &amp;s 的替代方法。它也适用于 RSS 提要等。
      • @Williham Totland 确实如此,我已经更新了答案以添加它。
      猜你喜欢
      • 2021-09-06
      • 1970-01-01
      • 2013-05-24
      • 1970-01-01
      • 2011-11-30
      • 2012-09-27
      • 1970-01-01
      • 2021-05-12
      • 1970-01-01
      相关资源
      最近更新 更多