从jquery.ready()调用的javascript何时相对于脚本运行?

时间:2012-08-14 14:10:33

标签: javascript jquery

传递给jQuery.ready()的Javascript将在DOM完全加载后运行,但不会等待接收所有资产(如jQuery.load())。凉。但是,在代码传递给jQuery.ready()之前,文档的<script>中的<head>标记中的javascript是否始终会运行?

我假设答案是肯定的,但找不到任何具体澄清这一点。

2 个答案:

答案 0 :(得分:2)

脚本标记中的脚本按照HTML文件中遇到的顺序按顺序运行。因此,HEAD标记中的脚本在加载文档的HEAD部分后立即运行,并且在该文件运行之后没有脚本运行,直到该脚本完成执行。

包含$(document).ready(fn)的脚本将安排其回调在整个文档加载后运行。

因此,由于HEAD部分中的脚本很长,所以在加载文档正文之前,HEAD部分中的脚本将在使用$(document).ready()指定的回调运行之前运行。

答案 1 :(得分:0)

在解析文档时浏览器到达script标记时执行Javascript代码。 jquery.ready等待整个DOM直到解析整个文档,所以是的,它会在您传递给jquery.ready的代码之前运行,无论它是在头部还是正文中。