document.onload与window.onload
页面加载完成包含两种事件:
- ready,表示文档结构已经加载完成
- onload,表示页面包含图片等文件在内的所有元素都加载完成
也就是说ready是在onload之前先完成
Jquery中以下三种写法是等价的
$(function(){
// do something
});
$(document).ready(function(){
//do something
})
$().ready(function(){
//do something
})
但是js与jquery不同,js中的自执行函数是在解析完后立即执行。
同时,
JS具有阻塞特性,当浏览器在执行js代码时,不能同时做其它事情,即script每次出现都会让页面等待脚本的解析和执行(不论JS是内嵌>的还是外链的),JS代码执行完成后,才继续渲染页面。所有script应该尽可能放到body的底部,以减少对页面下载的影响。