如何判断动态加载JS过程中JS是否已经加载完成
动态加载js并且判断是否加载完成!
在正常的加载过程中,js文件的加载是同步的,也就是说在js加载的过程中,浏览器会阻塞接下来的内容的解析。这时候,动态加载便显得尤为重要了,由于它是异步加载,因此,它可以在后台自动下载,并不会妨碍其它内容的正常解析,由此,便可以提高页面首次加载的速度。
那么,既然js是异步加载,我们又该如何判断它是否加载完成呢?
总结办法如下
function loadScript(jsfile,callback){
var head= document.getElementsByTagName('head')[0];
var script= document.createElement('script');
script.type= 'text/javascript';
script.src= jsfile;
head.appendChild(script);
script.onload = script.onreadystatechange = function() {
if (!this.readyState || this.readyState === "loaded" || this.readyState === "complete" ) {
script.onload = script.onreadystatechange = null;
if(callback&&typeof(callback)== 'function'){
callback();//window[callback]();如果传递字符串过来 调用window['函数名']() 调用方法
}
}
};
}
版权声明
本站部分原创文章,部分文章整理自网络。如有转载的文章侵犯了您的版权,请联系站长删除处理。如果您有优质文章,欢迎发稿给我们!联系站长:
愿本站的内容能为您的学习、工作带来绵薄之力。
评论