<script>元素

在html页面中插入Javascript的主要方法,就是使用<script>元素,插入有两种方法。

内部嵌入

<script type="text/javascript"> function sayHi(){ alert("hi"); } </script>
包含在<script>元素内部的javascript代码将被从上到下依次解释。解释器会解释一个函数的定义,然后将定义保存在自己的环境中。在解释器对<script>元素内部的所有代码求值完毕以前,页面的其余内容都不会被浏览器加载或者显示。

外部链接

<script type="text/javascript" src="example.js"></script>
在解析外部的javascript文件时,页面的处理也会暂时停止。


标签的位置

按照传统的方法,所有的<script>元素应该放在页面的<head>元素中,这样做

出现的问题:

在文档的<head>元素中包含所有的js文件,意味着必须等到全部的js代码都被下载下来,解析,执行完成后,才能开始呈现页面的内容,对于需要很多js代码的页面来说,无疑会导致浏览器出现明显的延迟,而延迟窗口将会是一片空白,为了避免这个问题,现代web应用程序一般都会

解决的方法

把全部的js引用放在<body>元素中页面内容的后面。


延迟脚本

HTML4.01为<script>标签定义了defer属性。

defer属性的用途

表明脚本在执行时不会影响页面的构造,相当于告诉浏览器立即下载,但是延迟执行,但是脚本会按照先后顺序执行。
<script type="text/javascript" defer="defer" src="example.js"></script>

异步脚本

HTML5为<script>元素定义了async属性

async属性的用途

只适用于外部脚本文件,并告诉浏览器立即下载,标记为async的脚本并不保证按照指定他们的先后顺序执行,从而异步加载页面的其他内容。
<script type="text/javascript" async src="example.js"></script>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 标签位置 传统的做法,所有 元素都应该放在页面的 元素,,意味着必须等 到全部JavaScript ...
    大小伍阅读 279评论 0 0
  • 在线阅读 http://interview.poetries.top[http://interview.poetr...
    前端进阶之旅阅读 114,910评论 24 450
  • 一:在制作一个Web应用或Web站点的过程中,你是如何考虑他的UI、安全性、高性能、SEO、可维护性以及技术因素的...
    Arno_z阅读 1,238评论 0 1
  • 现在的学生 与过去的学生 最大的区别 和老师不亲 面对面相碰 主动打招呼的 三分之一也很难 上课时间 倒头睡 下课...
    一度一阅读 150评论 0 0
  • 转眼之间,假期已经过去六天了,我的假期规划中的第一件事已经泡汤了,就是工作。第一天出去找工作就四处碰壁,大多数的收...
    佳盈阅读 272评论 0 1