我一直在实现 yepnope 脚本加载器作为 modernizr.js 库的一部分。之后我已经成功地加载了 jQuery 和依赖于 jQuery 的脚本。我是异步加载资源的新手,所以对我来说有点陌生。我一直在四处寻找,但在以下方面运气不佳。
我的问题是,在使用 yepnope.js 框架时,您对如何有效地替换 $(document).ready() 的功能有何看法。
我的理论是在我的基础库中创建一个适当命名的函数,然后在我的页面上将该变量设置为一个包含我现有的 $(document).ready() 代码的匿名函数。在完整回调中加载所有脚本后,yepnope 将调用此变量。
您是否同意这是一种很好的做法,还是我的做法完全错误?
(对于那些不知道的人,yepnope.js 的异步性质意味着文档在 yepnope 加载器完成之前调用 $ 或 jQuery,抛出“$ is undefined”错误 <- 如果错误请纠正我。)
第一个问题,希望是个好问题。
最佳答案
如果不使用 yepnope 加载 jQuery 对您来说不是问题,那么还有更简单的方法。
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
$.holdReady(true);
yepnope.load({
load: [
'placeholder.js',
'jquery-ui.min.js'
],
complete: function (){
$.holdReady(false);
}
});
</script>
关于javascript - 如何有效地将 yepnope.js 与 $(document).ready() 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5668311/