首页 > 代码库 > 一、jQuery的ready与javascript中的onload加载时间对比

一、jQuery的ready与javascript中的onload加载时间对比

<script type="text/javascript">
    var strtime = new Date().getTime();
    $(function(){
        var end1 = new Date().getTime();
        var t1 = end1 - strtime;
        $("body").append("<p>jquery加载时间为: "+t1+"秒</p>");
    })
    function test2(){
        var end2 = new Date().getTime();
        var t2 = end2 - strtime;
        $("body").append("<p>javascript中的 "+t2+"秒</p>");
    }
</script>
</head>
<body      <img src="http://www.mamicode.com/demo.jpg" style="width:200px;height:200px;"/>
</body>

这两种方式的加载时间有很大的差别,jquery的ready时机比javascript中的onload快很多,onload要等待网页中的所有元素都完全加载完毕后才能访问,而ready只需dom加载就可调用操作,但并不低表所有的元素都加载完毕如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>4-1-1</title>
<script type="text/javascript">
  document.getElementById("panel").    alert( "元素已经加载完毕 !");
  }
    /*
    执行错误,为什么?
    因为dom还未加载完毕。
    */
</script>
</head>
<body>
<div id="panel">click me.</div>
</body>
</html>

把它加到onload中

<script type="text/javascript">
  document.getElementById("panel").    alert( "元素已经加载完毕 !");
  }
  /*正确执行*/
</script>