在html中的script

  javascript在html页面中,有两种写法。

  inline: 在页面中直接编写javascript,但编写的javascript代码必须放在<script></script>里面。

  extenal file : 引入外部javascript文件,script标签中有一个叫src的属性,把外部javascript文件的地址赋值给这个属性即可。

  在html页面中,script标签一般放置到head标签里面。由于javascript是自上而下的加载解析,在遇到javascript时,页面会暂停加载渲染,直到javascript加载并运行完毕。为了在页面首次渲染时不出现白屏,现在基本上都把script标签放置到了body中,这样可以页面渲染完毕后,再去加载javascript。

  另外,在使用引入外部javascript文件方式时,可以通过在script标签中定义defer或者async属性来让资源文件与html文档并行加载,即在下载javascript文件时,并不暂停对html文档的渲染。

  defer : 资源文件立即会下载,但是会延迟到页面解析完毕再执行。 当页面中声明了多个defer的script,在页面解析完后,script会根据script的顺序来执行,并且先于DOMContentLoaded事件。 但实际中,script引入的javascript文件不总是按照顺序来执行。

  async : 和defer类似,但不同的是引入的javascript文件会早于DOMContentLoaded事件, 晚于load事件执行

posted @ 2017-10-31 14:03  潘大胖  阅读(875)  评论(0)    收藏  举报