首页 > 代码库 > JavaScript之<script>标签简介

JavaScript之<script>标签简介

向html页面中插入JavaScrpt的主要方法,就是使用<script>元素,下面是Html 4.01为<script>定义的6个属性。

1、async:可选表示应该立即下载脚本,但是不妨碍页面中的其他操作,比如下载比如下载其他资源或等待加载其他脚本。这个属性只对外部脚本有效

2、charset:可选。表示脚本通过src属性指定的代码的字符集。大多数浏览器会忽略它的值,所以这个属性也很少用。

3、defer:可选。表示脚本可以延迟到文档完全被解析和显示之后在执行。只对外部脚本有效。代码如下:

aaa.js文件

alert(document.getElementById("div"));

html文件:

<html xmlns="http://www.w3.org/1999/xhtml"><head>    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>    <title></title>    <script src="aaa.js"></script></head><body><div id="div"></div></body></html>

输出:null

现在给外部<script>标签加上defer属性

<html xmlns="http://www.w3.org/1999/xhtml"><head>    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>    <title></title>    <script src="aaa.js" defer="defer"></script> //加上了defer属性</head><body><div id="div"></div></body></html>

输出:[object HTMLDivElement]  这个属性很重要!

 

4、Lanuage:废弃,表示编写代码使用的脚本语言(如JavaScript,VBScript等)。现在大多数浏览器会忽略这个属性。

5、scr:表示要执行外部代码的外部文件。

6、type:可选。表示编写代码使用的脚本语言的内容类型(也称为MIME类型)。虽然text/javascript和text/ecmascript都已经不被推荐使用,但我们大多数都会用text/javascript。实际上,服务器在传送JavaScript文件时使用的MIME类型通常是application/x-javascript,但在type中设置这个值可能导致脚本被忽略。另外在非IE下可以使用以下值:application/javascript和application/ecmascript。考虑到约定俗成和最大限度的浏览器兼容性,目前type的属性值依然是text/javascript。不过,这个属性不是必须的,如果没有指定这个属性,则其默认值仍为text/javascript。

 

关于<script></script>元素的使用有下面几点需要注意的

(1)带有src属性的<script>元素不应该在其<script></script>标签之间在出现JavaScript代码,如果出现了,浏览器会下载并执行外部脚本文件,嵌入的代码会被忽略。

(2)<script>元素的src属性还可以包含来自外部域的JavaScript文件。代码如下:

 

<script src="http://www.tongli.con/test.js" defer="defer"></script>

 

这样位于外部域中的JavaScript代码也会被加载和解析,用这种方法加载Js文件看似强大,但是要注意安全性。

(3)<script>元素,只要不存在defer和async属性,浏览器都会按照文档流的形式依次对html文件里面的元素进行解析。

 

JavaScript之<script>标签简介