CDATA的含义是什么?
大师,
我是自学成才的。 有许多你开明的人所说的基本我什么都不知道。
阅读这个jQuery教程 ,我注意到这个标签(缺少更好的单词):“CDATA”如此处所示(从顶部开始的第三行):
//<![CDATA[ $(document).ready(function(){ $(".article .thebody").hide(); $("#container .article ul") .prepend("Read Body "); $(".actions li.readbody a").click(function(event){ $(this).parents("ul").prev(".thebody").toggle(); event.preventDefault(); }); }); //]]>
CDATA是什么意思? 有没有类似CDATA的标签?
使用您可以在XML(和XHTML)文档中嵌入JS,而无需通过XML实体替换
<
, >
, &
等的特殊XML字符 <
, >
, &
等等,以防止XML语法格式错误,并且您得到错误,例如实体名称必须紧跟实体引用中的“&” 。 但是,一般建议将JS代码放在自己的.js
文件中,然后由 。
在纯HTML文档中不需要]。 除非您使用基于XML的视图技术(如Facelets (适用于JSF)或ASP.NET MVC)进行开发,否则绝对不需要将您的HTML声明为XHTML 。 只需一个
在这种情况下CDATA
的原因是允许将文档作为直接XML加载。 在XML中, //
将被视为文本而不是注释,因此它将CDATA
视为XML标记。
维基百科总结得很好:
在XML文档或外部解析的实体中,
CDATA
部分是元素内容的一部分,标记为解析器仅解释为字符数据,而不是标记。CDATA
部分仅仅是表达字符数据的替代语法; 在表示为CDATA部分的字符数据与在通常语法中表现出的字符数据之间没有语义差异,其中<
和&
将由<
表示<
和&
, 分别。
我看待它的方式, CDATA
使XML解析器不会对代码进行消毒(使其显示为文本,而不是代码)。
我希望能解释一些......
CDATA是validation器忽略的字符数据。
你可以在CDATA标签中包装javascript之类的东西,这样你的html就可以validation(当然,如果你遵循更新的XHTML标准,这是不可取的)。
这是一个特殊的序列,允许内联javascript具有特殊字符,同时仍允许页面作为有效的xhtml传递。 更多细节在这里 。 基本上,不要担心它的确切含义,但确实把它放在那里!