代码改变世界

第二章 使用JavaScript

2013-07-25 22:43  xchit  阅读(356)  评论(0编辑  收藏  举报

     只要一提到把JavaScript放在网页中,就不得不涉及Web的核心语言-HTML。在当初开发JavaScript的时候,Netscape要解决的一个重要问题就是如何让JavaScript既能在HTML页面共存,又不影响那些页面在其它浏览器中的呈现效果。经过尝试、纠错和争论,最终的决定就是为Web增加同一的脚本支持。而Web诞生早起也保留下来,并被正式纳入HTML规范当中。

   一、Script标签解析 

  <script>xxx</script>这组标签,是用于在html页面中插入js的主要方法。它主要有以下几个属性:

  1.charset:可选。表示通过src属性指定的字符集。由于大多数浏览器忽略它,所以很少有人用它。 

  2.defer:可选。表示脚本可以延迟到文档完全被解析和显示之后再执行。由于大多数浏览器不支持,故很少用。
  3.language:已废弃。原来用于代码使用的脚本语言。由于大多数浏览器忽略它,所以不要用了。
  4.src:可选。表示包含要执行代码的外部文件。
  5.type:必需。可以看作是language的替代品。表示代码使用的脚本语言的内容类型。
    范例:type="text/javascript"。

    <scripttype="text/javascript"> 

    alert('hi!');
    </script>

    二、JS代码嵌入的一些问题 

    如果你想弹出一个</script>标签的字符串,那么浏览器会误解成JS代码已经结束了。
    解决的方法,就是把字符串分成两个部分,通过连接符‘+’来连接。

      <scripttype="text/javascript">alert('</scr'+'ipt>');</script> 
       一般来说,JS代码越来越庞大的时候,我们最好把他另存为一个.js文件,通过src引入即可。它还具有维护性高、可缓存(加载一次,无需加载)、方便未来扩展的特点。

<scripttype="text/javascript"src="demo1.js"></script> 

这样标签内就没有任何JS代码了。但,要注意的是,虽然没有任何代码,也不能用单 标签:    

<scripttype="text/javascript"src="demo1.js"/>; 

    也不能在里面添加任何代码:    

<scripttype="text/javascript"src="demo1.js">alert('我很可怜,执行不到!')</script> 
    按照常规,我们会把<script>标签存放到<head>...</head>之间。但有时也会放在body之 间。 
    不再需要提供注释,以前为了让不支持JavaScript浏览器能够屏蔽掉<script>内部的代 码,我们习惯在代码的前后用html注释掉,现在已经不需要了。    

<scripttype="text/javascript">          

<!-- alert('欢迎!');-->    

</script> 
    平稳退化不支持JavaScript处理:

<nosciprt>您没有启用JavaScript</noscript>