码迷,mamicode.com
首页 > 编程语言 > 详细

Javascript 装载和执行

时间:2015-05-07 21:44:42      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

copy from:http://coolshell.cn/articles/9749.html

首先,我想说一下Javascript的装载和执行。通常来说,浏览器对于Javascript的运行有两大特性:

  1)载入后马上执行

  2)执行时会阻塞页面后续的内容(包括页面的渲染、其它资源的下载)

于是,如果有多个js文件被引入,那么对于浏览器来说,这些js文件被被串行地载入,并依次执行。

因为javascript可能会来操作HTML文档的DOM树,所以,浏览器一般都不会像并行下载css文件并行下载js文件,因为这是js文件的特殊性造成的。所以,如果你的javascript想操作后面的DOM元素,基本上来说,浏览器都会报错说对象找不到。因为Javascript执行时,后面的HTML被阻塞住了,DOM树时还没有后面的DOM结点。所以程序也就报错了。

传统的方式

所以,当你写在代码中写下如下的代码:

1
2
<script type="text/javascript"
        src="http://coolshell.cn/asyncjs/alert.js"></script>

 

基本上来说,head里的 <script>标签会阻塞后续资源的载入以及整个页面的生成。我专门做了一个示例你可以看看:示例一。 注意:我的alert.js中只有一句话:alert(“hello world”) ,这更容易让你看到javascript是怎么阻塞后面的东西的。

所以,你知道为什么有很多网站把javascript放在网页的最后面了,要么就是动用了window.onload或是docmuemt ready之类的事件。

另外,因为绝大多数的Javascript代码并不需要等页面,所以,我们异步载入的功能。那么我们怎么异步载入呢?

Javascript 装载和执行

标签:

原文地址:http://www.cnblogs.com/darr/p/4485956.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!