zoukankan      html  css  js  c++  java
  • <script>元素在XHTML中的用法

      编写XHTML代码的规则要比编写HTML严格得多,例如如下代码:

     1 <script type="text/javascript">
     2     function compare(a, b){
     3         if(a < b) {
     4             alert("A is less than B");
     5         } else if(a > b){
     6             alert("A is greater than B");
     7         } else{
     8             alert("A is equal to B");
     9         }
    10     }
    11 </script>

      这个代码在HTML中是有效的,但是在XHTML中却是无效的。这里的比较语句 a < b 中的小于号(<)在XHTML中将被当作开始一个新标签解析。但是作为标签的话,小于号后面是不可以有空格的,因此这里就会导致语法错误。

      解决方案:

      ①使用HTML实体(&lt;)代替代码中所有的小于号(<),虽然可以解决问题,但是影响了代码的理解性;

      ②使用CData片段,如下:

     1 <script type="text/javascript"><![CDATA[
     2     function compare(a, b){
     3         if(a < b) {
     4             alert("A is less than B");
     5         } else if(a > b){
     6             alert("A is greater than B");
     7         } else{
     8             alert("A is equal to B");
     9         }
    10     }
    11 ]]></script>

       这个方法可以在兼容XHTML的浏览器中解决这个问题。但是还有不少浏览器不兼容XHTML,因而不支持CData片段。所以,为了兼容所有浏览器,可以采用如下方法:

     1 <script type="text/javascript">
     2 //<![CDATA[
     3     function compare(a, b){
     4         if(a < b) {
     5             alert("A is less than B");
     6         } else if(a > b){
     7             alert("A is greater than B");
     8         } else{
     9             alert("A is equal to B");
    10         }
    11     }
    12 //]]>
    13 </script>
  • 相关阅读:
    冒泡排序的PHP实现 Bubble Sort
    什么是排序算法
    使用memcache 心得和注意事项
    Memcache存储机制与指令汇总
    php中ob缓存机制
    防止php重复提交表单更安全的方法
    Nginx负载均衡配置实例详解
    FAT和EXFAT文件系统
    uCOS-II模拟(VS2010&WIN32)
    MIPS汇编指令集
  • 原文地址:https://www.cnblogs.com/tinyTea/p/8352122.html
Copyright © 2011-2022 走看看