码迷,mamicode.com
首页 > Web开发 > 详细

<![CDATA[的web使用简单说明

时间:2016-08-20 21:45:04      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:

html、javascript会涉及到三个解析器,html解析器、xml解析器、javascript解析器。那么好了,问题来了,以上代码经常混编在一起,各自有各自的规则,终究会有冲突的,如下就是冲突。


根据W3C XHTML 1.0的规定:在XHTML中,因为<和&这两个符号有特殊意义(小于号用于标签的开始标记),所以这两个符号<和&需要转义成<和&。


当html代码中掺杂javascript代码的时候,同时javascript代码中包含了”<”字符的时候html解析会出现错误,如果机智的将”<”替换为&lt,这样会导致javascript无法解析。为了解决以上冲突,可以使用<![CDATA[来处理。这样html解析过程中会将标识部分的代码当作文本字符处理,不做解析。


哎呦不对,按照规则写了javascript代码,增加了CDATA注释,为毛在IE6、Firefox、chrome将javascript跳过了没有执行呢。这个原因牵扯到html的工作模式了,我简单的理解为配置项吧,一个模式标准模式,这个时候解析器使用的是xml解析器,另一个模式是兼容模式,这个时候使用的是html解析器。CDATA注释在xml解析器中是认识的,但是html解析器是不认识的。怎么办?


一劳永逸的来了,兼容所有//<![CDATA[ 文本 //]]>


核心点在于三个解析器的各自的标准不同。

<![CDATA[的web使用简单说明

标签:

原文地址:http://www.cnblogs.com/wildfox/p/5791227.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!