加载第三方js广告小记

很多时候我们网站都需要加载第三方的js,比如google 统计、百度统计还有第三方的广告,但是当我们把这些js加入我们的页面中会影响我们整体网页的加载速度,做前端的朋友都知道,js会阻断资源的加载,当时我们的页面有很多图片,才用了lazyload的形式,但由于这些js阻断了资源的下载,也就是说这些第三方的js没有加载完成,lazyload 的图片也没有办法显示,用户会看到一堆空白。。。体验特别不好,对于这样中优化网上多的有很多,最简单的莫过于在script 标签上加 defer,或者使用jQuery getScript,但仍然有一个问题,这些js中有些使用了document.write('...');去继续加载其他js,如果采用上面说的两种方式就都没用了,苦思。。。后来想到了一个很搞笑的方案。

 

$(function(){
	document.write = function(str){
		$(str).appendTo(document.body);
	}
	$.getScript('http://cast.ra.icast.cn/p/?id=4314');
});
//把document.write 重写问题就搞定了!

你可能感兴趣的:(加载第三方js广告小记)