Rumah  >  Artikel  >  hujung hadapan web  >  JavaScript中onload和load的区别是什么?

JavaScript中onload和load的区别是什么?

青灯夜游
青灯夜游asal
2020-12-14 10:06:243779semak imbas

区别:load只是表明事件方法,但并未执行;onload表示加载完页面所有东西以后才执行,在页面只允许出现一个onload函数,因为它可编函数个数只有一个。onload可能会有元素没有加载完就执行,load等所有的元素加载完后才执行。

JavaScript中onload和load的区别是什么?

相关推荐:《jQuery视频教程

在写交互的时候,加载函数使onload还是load呢?

趁机整理以防遗忘!!

js中window.onload(function)等价于jquery中$(window).onload(function)

一:window.load这个只是表明事件方法,但并未执行,比如hover、click表示事件,必须用上hover、onclick他才会执行

在页面加载渲染的时候通常会有一个Loading效果,这时就可以用它了:

JS:

              $(window).load(function(){
                $(".loadingicon").addClass("loader-chanage");
                $(".loadingicon").fadeOut(300,function(){
                  $(".loadingicon").remove();
                  $(".maker").show().animate({"right":"0"},500);
                });
              })

$(window).load(function)页面当中的图片和其他资源加载完成之后才会执行;

二:window.onload 这个表示加载完页面所有东西以后才执行,在页面只允许出现一个onload函数,因为它可编函数个数只有一个:

JS:

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>demo float</title>
        
    </head>
    <body>
        <script type="text/javascript">
            window.onload = function(){   alert("这是1");};
            window.onload = function(){   alert("这是2");};
        </script>
    </body>
</html>

运行结果:

三:说完以上还有一个Jquery的$(document).ready(function),网页中的所有DOM结构绘制完毕后就执行,可能DOM元素关联的内容没有加载完,例如图片以及设置的相关高度宽度等,这时可以考虑jquery中的load方法规避;另外$(document).ready(function)可编写函数不限,如:

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>demo float</title>
        <script type="text/javascript" src="http://static.ruilife.net/static/js/jquery-1.9.1.min.js"></script>
    </head>
    <body>
        <script type="text/javascript">
            $(document).ready(function(){     console.log("这是1");});
            $(document).ready(function(){     console.log("这是2");});
        </script>
    </body>
</html>

运行结果:


四、document

document.write(_LoadingHtml);
      
      //监听加载状态改变
      document.onreadystatechange = completeLoading;
       
      //加载状态为complete时移除loading效果
      function completeLoading() {
          if (document.readyState == "complete") {
              var loadingMask = document.getElementById('loadingp');
              loadingMask.parentNode.removeChild(loadingMask);
          }
      }

最后总结一下:

js:window.onload页面一运行就执行该函数,执行该函数时,可能页面中的图片还没有加载完成!

jquery: $(window).load()页面中的图片或其它东西加载完成之后,执行该函数。

调用load方法的完整格式是:load( url, [data], [callback] )参数分别url地址、文件类型(php、html等)、回调函数,也支持选择器加载load("test.html #内容id名")

更多编程相关知识,请访问:编程教学!!

Atas ialah kandungan terperinci JavaScript中onload和load的区别是什么?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn