在制作网页的过程中,我们经常写类似下面的代码:
[html]
复制代码 代码如下:
<html>
<head>
<title>Example HTML Page</title>
<script type="text/javascript" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" src="/UploadFiles/2021-04-02/example2.js"></head>
<body>
<!-- 这里放内容 -->
</body>
</html>
<html>
<head>
<title>Example HTML Page</title>
<script type="text/javascript" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" src="/UploadFiles/2021-04-02/example2.js"></head>
<body>
<!-- 这里放内容 -->
</body>
</html>
按照惯例,所有的<script>元素都应该放在页面的<head>元素中。请注意:无论引用几个外部js文件,浏览器都会按照<script>元素在页面中出现的先后顺序对它们依次进行解析 。换句话说,在第一个<script>元素包含的代码解析完成后,第二个<script>包含的代码才会被解析,然后才是第三个、第四个...
这种做法的目的就是把所有外部文件(包括CSS文件和JavaScript文件)的引用都放在相同的地方。可是,在文档的<head>元素中包含所有JavaScript文件,意味着必须等到全部JavaScript代码都被下载、解析和执行完成以后,才能开始呈现页面的内容(浏览器在遇到<body>标签时才开始呈现内容)。对于那些需要很多JavaScript代码的页面来说,这无疑会导致浏览器在呈现页面时出现明显的延迟,而延迟期间的浏览器窗口将是一片空白。为了避免这个问题,现代Web应用程序一般都会把全部JavaScript引用放在<body>元素中,放在页面的内容后面,如下所示:
[html]
复制代码 代码如下:
<html>
<head>
<title>Example HTML Page</title>
</head>
<body>
<!-- 这里放内容 -->
<script type="text/javascript" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" src="/UploadFiles/2021-04-02/example2.js"></body>
</html>
<html>
<head>
<title>Example HTML Page</title>
</head>
<body>
<!-- 这里放内容 -->
<script type="text/javascript" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" src="/UploadFiles/2021-04-02/example2.js"></body>
</html>
这样,在解析包含的JavaScript代码之前,页面的内容将完全呈现在浏览器中。而用户也会因为浏览器窗口显示空白页面的时间缩短而感到打开页面的速度加快了。
或者也可以使用<script>标签的defer属性表明脚本在执行时不会影响页面的构造,即脚本会被延迟到整个页面都解析完毕后再运行,代码如下:
[html]
复制代码 代码如下:
<html>
<head>
<title>Example HTML Page</title>
<script type="text/javascript" defer="defer" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" defer="defer" src="/UploadFiles/2021-04-02/example2.js"></head>
<body>
<!-- 这里放内容 -->
</body>
</html>
<html>
<head>
<title>Example HTML Page</title>
<script type="text/javascript" defer="defer" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" defer="defer" src="/UploadFiles/2021-04-02/example2.js"></head>
<body>
<!-- 这里放内容 -->
</body>
</html>
上述两种写法的实际效果是一样的。但是,并非所有的浏览器都支持defer属性,有些浏览器会忽略这个属性,不延迟脚本的执行。
[html]
复制代码 代码如下:
<html>
<head>
<title>Example HTML Page</title>
<script type="text/javascript" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" src="/UploadFiles/2021-04-02/example2.js"></head>
<body>
<!-- 这里放内容 -->
</body>
</html>
<html>
<head>
<title>Example HTML Page</title>
<script type="text/javascript" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" src="/UploadFiles/2021-04-02/example2.js"></head>
<body>
<!-- 这里放内容 -->
</body>
</html>
按照惯例,所有的<script>元素都应该放在页面的<head>元素中。请注意:无论引用几个外部js文件,浏览器都会按照<script>元素在页面中出现的先后顺序对它们依次进行解析 。换句话说,在第一个<script>元素包含的代码解析完成后,第二个<script>包含的代码才会被解析,然后才是第三个、第四个...
这种做法的目的就是把所有外部文件(包括CSS文件和JavaScript文件)的引用都放在相同的地方。可是,在文档的<head>元素中包含所有JavaScript文件,意味着必须等到全部JavaScript代码都被下载、解析和执行完成以后,才能开始呈现页面的内容(浏览器在遇到<body>标签时才开始呈现内容)。对于那些需要很多JavaScript代码的页面来说,这无疑会导致浏览器在呈现页面时出现明显的延迟,而延迟期间的浏览器窗口将是一片空白。为了避免这个问题,现代Web应用程序一般都会把全部JavaScript引用放在<body>元素中,放在页面的内容后面,如下所示:
[html]
复制代码 代码如下:
<html>
<head>
<title>Example HTML Page</title>
</head>
<body>
<!-- 这里放内容 -->
<script type="text/javascript" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" src="/UploadFiles/2021-04-02/example2.js"></body>
</html>
<html>
<head>
<title>Example HTML Page</title>
</head>
<body>
<!-- 这里放内容 -->
<script type="text/javascript" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" src="/UploadFiles/2021-04-02/example2.js"></body>
</html>
这样,在解析包含的JavaScript代码之前,页面的内容将完全呈现在浏览器中。而用户也会因为浏览器窗口显示空白页面的时间缩短而感到打开页面的速度加快了。
或者也可以使用<script>标签的defer属性表明脚本在执行时不会影响页面的构造,即脚本会被延迟到整个页面都解析完毕后再运行,代码如下:
[html]
复制代码 代码如下:
<html>
<head>
<title>Example HTML Page</title>
<script type="text/javascript" defer="defer" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" defer="defer" src="/UploadFiles/2021-04-02/example2.js"></head>
<body>
<!-- 这里放内容 -->
</body>
</html>
<html>
<head>
<title>Example HTML Page</title>
<script type="text/javascript" defer="defer" src="/UploadFiles/2021-04-02/example1.js"><script type="text/javascript" defer="defer" src="/UploadFiles/2021-04-02/example2.js"></head>
<body>
<!-- 这里放内容 -->
</body>
</html>
上述两种写法的实际效果是一样的。但是,并非所有的浏览器都支持defer属性,有些浏览器会忽略这个属性,不延迟脚本的执行。
标签:
标签,位置
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“javascript标签在页面中的位置探讨”评论...
更新动态
2024年05月10日
2024年05月10日
- 群星《妖神令 影视原声专辑》[320K/MP3][85.23MB]
- 逆水寒手游五子棋第二十三关怎么过 逆水寒手游残局攻略大全
- 逆水寒手游五子棋第二十二关怎么过 逆水寒手游残局攻略大全
- 欢乐钓鱼大师最稀有的鱼是什么 欢乐钓鱼大师最稀有的鱼攻略
- ABC唱片-《蔡琴.三十周年纪念版》6N纯银镀膜[WAV+CUE]
- ABC唱片-《汉斯.德斯辛克.心中布鲁斯》6N纯银镀膜[WAV+CUE]
- 群星《DJ·夜色魅影HQ》头版限量[低速原抓WAV+CUE]
- 《如龙》桐生声优被警察拦下盘问:你有犯罪记录吗?
- 游族2023年净利润0.91亿元 《少年西游记2》即将公测
- 曝快手北京游戏事业部全数被裁 项目测试数据未达标
- 李雨寰.2012-我可是天使【有凰音乐】【WAV+CUE】
- 刘美君.1991-听我细诉【BMG】【WAV+CUE】
- 群星.2016-滚石爱情故事3CD【滚石】【WAV+CUE】
- 欢乐钓鱼大师怎么解锁全地图 欢乐钓鱼大师全地图解锁方法
- 欢乐钓鱼大师锦标赛在哪里进 欢乐钓鱼大师锦标赛入口位置介绍