在哪里放置 javascript 代码?
通常情况下,javascript 代码是和 html 代码一起使用的,可以将 javascript 代码放置在 html 文档的任何地方。但放置的地方,会对 javascript 代码的正常执行会有一定影响,具体如下所述。
放置于<head></head>之间
将 javascript 代码放置于 html 文档的 <head></head> 标签之间是一个通常的做法。由于 html 文档是由浏览器从上到下依次载入的,将 javascript 代码放置于<head></head> 标签之间,可以确保在需要使用脚本之前,它已经被载入了:
代码如下:
<html>
<head>
<script type=text/javascript>
……
javascript 代码
……
</script>
</head>
....
放置于<body></body>之间
也有部分情况将 javascript 代码放置于 <body></body> 之间的。设想如下一种情况:我们有一段 javascript 代码需要操作 html 元素。但由于 html 文档是由浏览器从上到下依次载入的,为避免 javascript 代码操作 html 元素时,html 元素还未载入而报错(对象不存在),因此需要将这段代码写到 html 元素后面,例子如下:
代码如下:
<html>
<head>
</head>
<body>
</body>
<div id=div1></div>
<script type=text/javascript>
document.getelementbyid(div1).innerhtml=测试文字;
</script>
</html>
但通常情况下,我们操作页面元素一般都是通过事件来驱动的,所以上面这种情况并不多见。另外我们不建议将 javascript 代码写到 <html></html> 之外。
提示
如果 html 文档声明为 xhtml ,<script></script> 标签必须在 cdata 部分内声明,否则 xhtml 将把 <script></script> 标签解析为另一个 xml 标签,里面的 javascript 代码可能不会正常执行。因此,在严格的 xhtml 中使用 javascript 应该像如下示例一样声明:
代码如下:
<html>
<head>
<script type=text/javascript>
<![cdata[
javascript 代码
]]>
</script>
</head>
....
以上两种将 javascript 代码写到 html 文档中的方式,都是 html 文档内部引用 javascript 代码的方式。除了内部引用,还可以使用外部引用方式。
外部引用 javascript 代码
将 javascript 代码(不包括<script></script>标签)单独形成一个文档,并以 js 后缀命名,如 myscript.js ,并在 html 文档 <script></script> 标签中使用 src 属性来引用该文件:
代码如下:
<html>
<head>
<script type=text/javascript src=myscript.js></script>
</head>
....
在使用了外部引用 javascript 代码之后,其好处显而易见:
1.避免在 javascript 代码里使用 <!-- ... //-->
2.避免使用难看的 cdata
3.公共的 javascript 代码可以被复用于其他 html 文档,也利于 javascript 代码的统一维护
4.html 文档更小,利于搜索引擎收录
5.可以压缩、加密单个 javascript 文件
6.浏览器可以缓存 javascript 文件,减少宽带使用(当多个页面同时使用一个 javascript 文件的时候,通常只需下载一次)
7.避免使用复杂的 html 实体,如可以直接使用 document.write(2>1) 而无需写作 document.write(2<1)
将 javascript 代码形成为外部文件,也会增加服务器的 http 请求负担,在超高并发请求的环境下,这并不是一个好的策略。另外 在引用外部 js 文件时,需注意文件的正确路径。