• 沙里软件

  • ShaliSoft.com [手机站]   办公桌收纳抽屉
  • 首页
  • 博文
  • 演示
  • 管理
  • <![CDATA]>作用

    网络   2014/5/24 11:10:11

    CDATA 内部的所有东西都会被解析器忽略。


    关于 CDATA 区段的注释:


    CDATA 区段不能包含字符串 "]]>",所以,CDATA 区段的嵌套是不被允许的。


    同时也需要确保在 "]]>" 字符串中没有空格或折行。


    为什么要使用CDATA:


           XHTML的第二个改变是使用CDATA段。XML中的CDATA段用于声明不应被解析为标签的文本(XHTML也是如此),这样就可以使用特殊字符,如小于(<)、大于(>)、和号(&)和双引号("),而不必使用它们的字符实体。考虑下面的代码:


    <script type="text/javascript">

    function compare(a,b)

    {

    if (a < b)

       {alert("a小于b");}

    else if (a>b)

       {alert("a大于b");}

    else

       {alert("a等于b");}

    }

    </script>


    这个函数相当简单,它比较数字a和b,然后显示消息说明它们的关系。但是,在XHTML中,这段代码是无效的,因为它使用了三个特殊符号,即小于、大于和双引号。要修正这个问题,必须分别用这三个字符的XML实体&lt;、&gt;和&quot;替换它们:


    <script type="text/javascript">

    function compare(a,b)

    {

    if (a &lt;b)

       {alert(&quot;a小于b&quot;);}   

    else if (a&gt;b)

       {alert(&quot;a大于b&quot;);}

    else

       {alert(&quot;a等于b&quot;);}

    }

    </script>


    这段代码存在两个问题。首先,开发者不习惯用XML实体编写代码。这使代码很难读懂。其次,在JavaScript中,这种代码实际上将视为有语法错,因为解释程序不知道XML实体的意思。用CDATA段即可以以常规形式(即易读的语法)编写JavaScript代码。正式加入CDATA段的方法如下:


    <script type="text/javascript">

    <![CDATA[

    function compare(a,b)

    {

    if (a < b)

       {alert("a小于b");}

    else if (a>b)

       {alert("a大于b");}

    else

       {alert("a等于b");}

    }

    ]]>

    </script>


    虽然这是正式方式,但还要记住,大多数浏览器都不完全支持XHTML,这就带来主要问题,即这在JavaScript中是个语法错误,因为大多数浏览器还不认识CDATA段。


    ---------------------------------------------------------------------------------------------------------------------------------------------------------


    <script type="text/javascript">

    //<![CDATA[                                            

    function compare(a,b)

    {

    if (a < b)

       {alert("a小于b");}

    else if (a>b)

       {alert("a大于b");}

    else

       {alert("a等于b");}

    }

    //]]>                                      

    </script>


    当前使用的解决方案模仿了“对旧浏览器隐藏”代码的方法。使用单行的JavaScript注释"//",可在不影响代码语法的情况下嵌入CDATA段:


    现在,这段代码在不支持XHTML的浏览器中也可运行。


    但是,为避免CDATA的问题,最好还是用外部文件引入JavaScript代码。


    阅读(785) 分享(0)

    上一篇: IE6支持兼容max-height、min-height CSS样式
    下一篇: RSS日期的问题 RSS日期格式化 RSS日期显示不正确

  • 精彩推荐

    ◆ Win7的IIS7中ASP获得的系统日期格式为斜杠和去掉星期的解决办法
    ◆ 腾讯OA基础服务使用C# 开发的千万级应用
    ◆ 怎么做秒杀系统?秒杀系统设计
    ◆ 怎么设计比较安全的密码加密方法
    ◆ asp.net 用Stopwatch计算运行时间
    ◆ ASP.NET Eval四种绑定方式
    ◆ 安卓手机QQ新功能WiFi共享泄露用户隐私
    ◆ 我为什么不喜欢面向对象
    ◆ 老照片:马云、马化腾、李彦宏、刘强东、李开复,大佬们的罕见童年照
    ◆ 为什么刷单会被淘宝轻而易举的查到?
  • 用心做事 不能唯利是图

    • 吊儿
    • 用QQ联系我17905772
  • 搜索


  • 最新文章

    • 导出Excel 格式 mso-number-format
    • 服务器iis支持tls1.2,windows server 2008 r2 中IIS启用TLS 1.2(安装SSL后用TLS 1.2)
    • MySQL配置优化
    • EditPlus 添加文件比较工具winmerge
    • 滚动悬浮固定JS特效

  • 热门文章

    • php sso单点登录实现代码
    • 中国菜刀(China chopper) 最新黑客工具
    • redis.conf中文版(基于2.4)
    • 搜索引擎名单大全
    • php图片上传类,支持加水印,生成略缩图

  • 最新图库


  • 最新评论


  • 友情链接

  • 沙里软件

  • 最近访客

    Powered by ShaliSoft.com 豫ICP备13008529号

    免责声明:本站部分内容来源于互联网,转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,不为其版权负责,也不构成任何其他建议。如果发现侵犯版权,联系QQ17905772进行删除。