4

我见过一些包含 CDATA 的 Javascript 代码。例如,下面是我从http://www.w3schools.com/xml/xml_cdata.asp复制的

<script>
    <![CDATA[
    function matchwo(a,b)
    {
    if (a < b && a < 0) then
      {
      return 1;
      }
    else
      {
      return 0;
      }
    }
    ]]>
    </script>

请注意,我在上面的链接中做了描述。但是,我可以就何时决定使用 CDATA 标签得出结论。

如果有人可以帮助我了解此标签的用途以及何时使用它,那就太好了。


SensorManager sManager;
acce = sManager.registerListener(this,sManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);

if(acce) 
{

}
4

3 回答 3

6

在 XHTML 中,脚本元素的内容被视为标记。所以<&有它们通常的特殊含义。CDATA 块告诉解析器将内容视为文本而不是标记,因此您可以判断 x 是否小于 y而不会<被视为标记的开头。

请注意,如果您使用 Content-Type 提供 XHTML,text/html那么它将被视为损坏的 HTML 而不是 XML。我建议避免使用 XHTML——它只有在你的工具链中有 XML 处理器并且将它与 HTML 解析器完美配合时才有用,这是不必要的工作。只需编写 HTML 并完成它。

于 2013-07-17T10:52:21.393 回答
3

简单地说,我们需要 CDATA 部分,我们需要将您的文档解析为 XML

于 2013-07-17T10:46:39.697 回答
0

CDATA 在 HTML 中没有任何意义,但在 XML 中,它用于处理尖括号和 & 等字符。当我需要在我的 XSL 转换中包含 JavaScript 时,我使用 CDATA 块。

了解 CDATA 的作用可能会帮助您了解何时使用它:“一些文本,如 JavaScript 代码,包含很多“<”或“&”字符。为避免错误,脚本代码可以定义为 CDATA。另请参阅:什么是 HTML 中的 CDATA?

于 2013-07-17T11:03:24.580 回答