怎么判断js脚本加载是否完成

2025-11-20 05:14:02

1、第一种,同步加载可以通过 window.onload、$(document).ready(function () {}) 来判断,由于浏览器在加载html文件的时候,只要没有指定 script 标签的 async 属性,那么就是同步加载,必须等待文件加载结束,才加载下一个文件。window.onload 的函数是 在HTML 文档加载完毕后触发的,包括DOM元素和其他页面元素(例如图片)的加载。

2、第二种,异步加载可以通过 document.readyState 的状态来判断。

readyState 属性返回当前文档的状态。

  该属性返回以下值:

uninitialized - 还未开始载入

loading - 载入中

interactive - 已加载,文档与用户可以开始交互

complete - 载入完成  (loaded)

3、通过 loadScript 函数来加载相应的 js 脚本:

function loadScript(url,callback){


  var script=document.createElement('script');
    script.type='text/javascript';
    script.async='async';
    script.src=url;
    document.body.appendChild(script);
    if(script.readyState){   //IE
      script.onreadystatechange=function(){
        if(script.readyState=='complete'||script.readyState=='loaded'){
          script.onreadystatechange=null;
          callback();
        }
      }
    }else{    //非IE
      script.onload=function(){callback();}
    }
}
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢