为什么在 jQuery 脚本中使用 *//<![CDATA[* 和 *//]]>* ?

Ale*_*lex 5 javascript jquery

我有一段 javascript 工作片段:

<script type="text/javascript">
    //<![CDATA[
        jQuery(document).ready(function() {
            jQuery("#page_template option[value='sidebar-page.php']").remove();
        });
    //]]>
</script>
Run Code Online (Sandbox Code Playgroud)

//<![CDATA[//]]>代表什么?我从未使用过它,但最近我经常遇到它。预先感谢你们增长了我的知识!;)

Rah*_*thi 4

CDATA 用于允许将文档作为直接 XML 加载。您可以将JS 嵌入到 XML 文档中,而无需用 XML 实体 <、>、& 替换 <、>、& 等特殊 XML 字符。等以防止 XML 语法被破坏。

所以double slash //在您的 XML 中,它将被视为文本而不是注释,因此它使 CDATA 成为 XML 标记。

维基百科说:-

在 XML 文档或外部解析实体中,CDATA 部分是元素内容的一部分,它被标记为供解析器仅解释为字符数据,而不是标记。CDATA 部分只是表达字符数据的替代语法;表现为 CDATA 部分的字符数据和表现为通常语法中的字符数据之间没有语义差异,其中 < 和 & 分别由 < 和 & 表示。

  • 为您修复了您的实体;) (2认同)