标签: asynchronous-loader

如何有效地使用yepnope.js和$(document).ready()?

我一直在实现yepnope脚本加载器作为modernizr.js库的一部分.之后我成功地加载了jQuery以加载jQuery依赖脚本.我是异步加载资源的新手,所以对我来说这有点新鲜.我一直在四处寻找,但是下面没有太多运气.

我的问题是,在使用yepnope.js框架时,您对如何有效替换$(document).ready()的功能有何看法?

我的理论是在我的基础库中创建一个适当命名的函数,然后在我的页面上将该变量设置为包含我现有的$(document).ready()代码的匿名函数.在所有脚本加载到完整回调之后,yepnope将调用此变量.

你是否同意这是一个很好的方法,或者我是否完全以错误的方式接近这个?

(对于那些不知道的人,yepnope.js的异步性质意味着文档在yepnope加载器完成之前调用$或jQuery,抛出"$ is undefined"错误< - 如果错误请纠正我.)

第一个问题,希望它是一个好的.

javascript jquery document-ready asynchronous-loader yepnope

15
推荐指数
2
解决办法
7617
查看次数

异步javascript加载器的推荐用法

刚开始查看异步javascript加载libs,例如lab.jsscript.js.我的问题是关于使用这种异步加载模式的最佳实践.

我想过几个可能的设置:

  1. 使用脚本标记在顶部或页面加载异步加载器.这允许gzipping和缓存,但它也会在初始加载期间阻塞.这可能不是一个问题,因为这些加载器应该相当小(我们应该首先加载css)吗?

  2. 在您的html中嵌入异步加载器代码,然后立即开始使用以加载依赖项.这意味着没有对异步加载器的单独请求,因此它可能更快一点,但它也不会被gzip压缩和缓存,因此每次都必须加载.

  3. 在页面底部执行JS的经典加载,以便首先加载样式表等.将异步加载器放在页面底部的阻塞脚本标记中,然后异步加载所有依赖项.

什么是最常用的场景,人们通常如何异步加载他们的js?

javascript dependency-management asynchronous-loader

0
推荐指数
1
解决办法
1600
查看次数