js异步加载
- 动态创建dom
<script>(function(d,s,id){
var js,fjs = d.getElementByTagName(s)[0];
if(d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js,fjs);
}(document,'script','facebook-jssdk'));</script>
- async和defer属性
defer是严格顺序加载,async是哪个先加载完加载哪个 - 通过Ajax获取脚本内容,然后再创建
懒加载
第一种是纯粹的延迟加载,使用setTimeOut或setInterval进行加载延迟.
第二种是条件加载,符合某些条件,或触发了某些事件才开始异步下载。
第三种是可视区加载,即仅加载用户可以看到的区域,这个主要由监控滚动条来实现,一般会在距用户看到某图片前一定距离遍开始加载,这样能保证用户拉下时正好能看到图片。
预加载
- 用CSS和JavaScript实现预加载:backgrond
- 仅使用JavaScript实现预加载
- 使用Ajax实现预加载
本文介绍了JavaScript中异步加载的方法,包括使用async和defer属性、动态创建DOM节点、通过Ajax获取脚本内容等技术手段,并探讨了懒加载的不同类型及其实现方式。
182

被折叠的 条评论
为什么被折叠?



