代码如下 | 复制代码 |
window.onload = function(){ // 当网页加载完成后执行这里的代码块 }; |
而在jQuery中也有一个对应的函数,即等待网页加载完后执行代码块
代码如下 | 复制代码 |
$(document).ready(function(){ // 当网页加载完成后执行这里的代码块 }); |
以上这两个看似一样的功能,但实际有很大的区别
onload不仅在创建DOM树之后,而且在所有外部资源全部加载完毕,并且整个页面在浏览器窗口中显示完毕之后,才会执行。这些资源不仅包括图片资源,而且包括嵌入在页面上的flash视频,如果图片或者flash过多,那么会一段很长加载时间,也就意味这延迟执行代码块的时间会更多。
jQuery中的ready()方法只需要等待文档结构被完全解析并且浏览器已经把HTML转化为DOM树后就会执行代码块,这里注意的是仅仅是DOM,网页中的图片,flash等外部资源都毫无关联。
由此可见jQuery中的ready()方法将缩短等待时间。
当然还有另外一种方式,就是把脚本都在<body>标签后面,这样的话网页按照文档流顺序执行,也会达到JavaScript中onload或者jQuery中ready()效果,并且这中方式将更快的展现网页内容。
时间: 2024-10-02 04:59:10