window.onload和$(docunment).ready的区别

      浏览器加载完DOM后,会通过javascript为DOM元素添加事件,在javascript中,通常使用window.onload()方法。

在jquery中,则使用$(document).ready()方法。下面介绍一下两者的区别。

1.执行时机 
      window.onload :必须在页面所有元素(包括图片,引用文件)加载完后执行。。 
      $(document).ready() :是页面中所有HTML DOM,CSS DOM结构加载完之后就会执行,其他图片可能没有加载完。

如果想要网页所有内容(包括图片等)加载完毕,再注册事件,使用$(window).load(function);等价于window.onload()。

2.编写个数不同 

       window.onload :不能同时写多个,后面的将会覆盖前面的。

      $(document).ready() :可以同时编写多个,并且都可以得到执行。

3.简化写法 

      window.onload :无。

      $(document).ready() :

$(document).ready(function(){
  //to do;
});

$().ready(function(){ //$()不带参数默认是document
  //to do;
});

$(function(){
  //to do;
});

最后附上一段在所有DOM元素加载之前执行的jQuery代码

<script type="text/javascript">
(function() {
            alert("DOM还没加载哦!");
        })(jQuery)
  </script>

      

原文地址:https://www.cnblogs.com/sysg/p/6543159.html