JavaScript脚本可以放在HTML文档任何需要的位置。一般来说,可以在<head>与</head>、<body>与</body>标记对之间按需要放置JavaScript脚本代码。

一、放在<head>与</head>标记对之间

放置在<head>与</head>标记对之间的JavaScript脚本代码一般用于提前载入以响应用户的动作,一般不影响HTML文档的浏览器显示内容。如下是其基本文档结构:

 1 <html>
2 <head>
3 <title>放置在<head>与</head>标记对之间</title>
4 <!--直接写JavaScript代码-->
5 <script type="text/javascript">
6 //JavaScript代码
7 </script>
8 <!--引入外部脚本-->
9 <script type="text/javascript" src="1.js"></script>
10 </head>
11 <body>
12 </body>
13 </html>

二、放置在<body>与</body>标记对之间

JavaScript脚本也可以放置在<body>与</body>标记对之间,可根据需要写多个独立的脚本代码段并与HTML代码结合在一起。

 1 <html>
2 <head>
3 <title>放置在<body>与</body>标记对之间</title>
4 </head>
5 <body>
6 <!--直接写JavaScript代码-->
7 <script type="text/javascript">
8     //JavaScript代码
9 </script>
10 <!--引入外部脚本-->
11 <script type="text/javascript" src="1.js"></script>
12 </body>
13 </html>

注意:在<head>和<body>标签内可以有多个代码块,只要放在<script type="text/javascript">与</script>之间或者引入外部脚本即可。同时,JavaScript脚本也可以放在其他任意HTML标签之间,如<div>、<p>、<span>等。

说明:浏览器一般是从上到下渲染HTML,当遇到JavaScript代码时,浏览器将发生阻塞(不再解析后面的任何代码,包括HTML和JavaScript),有些浏览器在阻塞期间不会解析该JavaScript后面的HTML代码,必须等到该JavaScript代码执行完毕,才继续解析。如果将JavaScript放置在<head>...</head>或者<body>...</body>之间,经常会发生会发生这种现象:浏览器先是呈现一部分页面,再呈现后边的页面,中间间隔时间明显。这样带来的明显结果就是用户体验差。

因此,如无特殊要求,我们强烈建议将JavaScript代码置于<body>...</body>的最后。如:

<body>
<!--HTML代码-->
<script type="text/javascript">
</scirpt>
<script type="text/javascript" src="1.js"></scirpt>
</body>

原文链接:http://www.itxueyuan.org/view/6297.html

嵌入javascript脚本的位置的更多相关文章

  1. smarty模板中如何嵌入javascript脚本

    [官方网站](http://www.php100.com/manual/smarty/) 在smarty文件里直接写javascript代码时候,造成500错误. javascript代码有很多的{} ...

  2. JavaScript脚本在页面中放置的位置

    JavaScript脚本通常放置在三个位置: 1.head部分JavaScript脚本. 2.body部分JavaScript脚本. 3.单独以.js结尾的文件中的JavaScript脚本. 客户端会 ...

  3. JavaScript脚本语言基础(一)

    导读: JavaScript代码嵌入HTML文档 JavaScript代码运行方式 第一个实例 JavaScript的三种对话框 定义JavaScript变量 JavaScript运算符和操作符 Ja ...

  4. JavaScript脚本语言基础(四)

    导读: JavaScript和DOM DOM文档对象常用方法和属性 DOW文档对象运用 JSON数据交换格式 正则表达式 1.JavaScript和DOM [返回] 文档对象模型(Document O ...

  5. JavaScript脚本语言基础(三)

    导读: 数学对象(Math) 数组对象(Array) 字符串对象(String) 日期对象(Date) js对象是属性和方法的集合.JavaScript中的所有事物都是对象,如:字符串.数值.数组.函 ...

  6. Windows桌面或服务器环境下嵌入JavaScript支持(JSRT)

    很多人比较关注Google的JS V8 JavaScript引擎,确实Google最近很高调.但这个库在Windows下使用确实有点难度,即使在Linux嵌入,也需要下载gyp,编译安装,然后再下载v ...

  7. 浏览器环境下JavaScript脚本加载与执行探析之代码执行顺序

    本文主要基于向HTML页面引入JavaScript的几种方式,分析HTML中JavaScript脚本的执行顺序问题 1. 关于JavaScript脚本执行的阻塞性 JavaScript在浏览器中被解析 ...

  8. 可嵌入的脚本引擎 Jx9

    Jx9是一个可嵌入的脚本引擎,基于JSON实现了图灵完备(Turing complete)的编程语言. Jx9 是那些需要流行和高效率脚本支持应用程序(比如:游戏.数据库系统,文本编辑器,网络应用程序 ...

  9. javascript脚本何时会被执行

    javascript脚本可以嵌入在html内的任意地方,但它何时被调用呢?当浏览器打开HTML文件后,会直接运行不是声明函数的脚本或通过事件调用脚本函数,下面分析这几种情况. 1.浏览器在打开页面时执 ...

随机推荐

  1. SaberRD之直流工作点分析

    直流工作点分析(DC Operating Point Analysis)用于确定电路的静态工作点. 静态工作点的概念来源于三极管的电流放大特性.三极管放大电路中,当交流输入信号为零时,电路处于直流工作 ...

  2. canvas画时钟,重拾乐趣!

    canvas时钟--效果图 一.先来简单介绍画时钟需要的canvas知识 1.在HTML页面中添加canvas元素,必须定义canvas元素的id属性值以便接下来的调用. HTML代码: <ca ...

  3. 点击Robot Framework的桌面快捷图标后,没有反应(没有打开应用程序)

    http://www.cnblogs.com/zhengyihan1216/p/6397478.html  这篇文章中介绍了如何安装Robot Framework以及如何在桌面上创建快捷方式. 但是有 ...

  4. Hibernate一对一外键映射

    Hibernate 一对一外键映射                    ------------------------------                            ----- ...

  5. DOM基础(二)

    在我之前写的DOM基础(一)的文章中提到过兼容性的问题,也就是在获取标签间文本信息的时候,早期的火狐版本是不支持innerText的,只支持textContent ,现在的火狐浏览器两者都支持.而IE ...

  6. 【JS】JavaScript中的闭包

    在JavaScript中,闭包指的是有权访问另一个函数作用域中的变量的函数:创建闭包最常见的方式就是在一个函数内创建另一个函数.如下例子: function A(propertyName){ retu ...

  7. Java面试05|MySQL及InnoDB引擎

    1.InnoDB引擎索引 InnoDB支持的索引有以下几种: (1)哈希索引 (2)全文索引 (1)B+树索引 又可以分为聚集索引与辅助索引 索引的创建可以在CREATE TABLE语句中进行,也可以 ...

  8. 基于 Koa平台Node.js开发的KoaHub.js获取/设置会话功能代码

    koa-session2 Middleware for Koa2 to get/set session use with custom stores such as Redis or mongodb ...

  9. java爬虫查找四川大学所有学院的网站的网址中的通知和新闻——以计算机学院为例

    需求:查找四川大学所有学院的网站的网址中的通知和新闻——以计算机学院为例 流程图 3. 具体步骤 (1) 学院的主页为:http://cs.scu.edu.cn/ 获取该页面的所有内容(本文只获取新闻 ...

  10. Oh, my god令人头痛的“对象”--------C#数据类型

    1.C#常用的数据类型: ①整型            int ②浮点型         float ③双精度型      double ④字符串         string ⑤布尔类型       ...