首页 > 编程 > JavaScript > 正文

javascript懒惰加载

2019-11-08 01:27:22
字体:
来源:转载
供稿:网友

        页面加载外部文件往往都是异步加载,当外部文件关联引用的时候就会出现问题,因此需要我们手动处理这种动态的引用关系。

        结合实际情况引用的一个百度echarts示例来说明这种情况:

        baidu_echarts.js通常会比我们普通引用的自定义js文件大好几个数据量级,但是为了实现baiduecharts的效果我们需要在自定义文件中实现引用,当出现网络延迟等情况的时候,可能会出现无法加载的情况(此时没有任何错误,因为有线程正在努力加载),因此我们必须人为的去处理这种关联关系。

	function loadScript(url, callback){  	    var script = document.createElement("script")  	    script.type = "text/javascript";  	    if (script.readyState){  //IE  	        script.onreadystatechange = function(){  	            if (script.readyState == "loaded" || script.readyState == "complete"){  	                script.onreadystatechange = null;  	                callback();  	            }  	        };  	    } else {  //Others  	        script.onload = function(){  	            callback();  	        };  	    }  	    script.src = url;  	    document.getElementsByTagName("head")[0].appendChild(script);  	} 		loadScript("$!{gsc.context}/webpage/etrade/pages/accountinfo/echarts.js", function(){  		loadScript("$!{gsc.context}/webpage/etrade/pages/accountinfo/accountinfo.js", function(){  		   console.log(">>>>>do");		});	}); 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表