首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

异步加载js资料

2013-02-17 
异步加载js文件为了解决这些问题,可以使用 DOM 方法,动态加载 Javascript 文件。function loadScript (url)

异步加载js文件

为了解决这些问题,可以使用 DOM 方法,动态加载 Javascript 文件。

function loadScript (url){    var script = document.createElement ("script");    script.type = "text/javascript";    script.src = url;    document.body.appendChild (script);}

   这样做的原理是,浏览器即时创造出一个<script>标签,然后"异步"读取 Javascript 文件。这样不会造成页面堵塞,但会造成另外一个问题:这样加载的 Javascript 文件,不在原始的 DOM 结构之中,因此在 DOM-ready(DOMContentLoaded)事件和 window.onload 事件中指定的回调函数对它无效。

那么我们如何办了?幸亏有大师写的开源加载组件!

外部函数库 LABjs 、SeaJS 和 RequireJS,可以帮助我们更有效地管理 Javascript 加载

LABjs

LABjs 的核心是 LAB(Loading and Blocking):Loading 指异步并行加载,Blocking 是指同步等待执行。LABjs 通过优雅的语法(script 和 wait)实现了这两大特性,核心价值是性能优化。LABjs 是一个文件加载器。

RequireJS 和 SeaJS 则是模块加载器,倡导的是一种模块化开发理念,核心价值是让 JavaScript 的模块化开发变得更简单自然。
模块加载器一般可降级为文件加载器用,因此使用 RequireJS 和 SeaJS,也可以达成 LABjs 的性能优化目的。

?

?

热点排行