2011-03-02 27 views
3

我想将jquery缓动包包含到我的应用程序中。在requireJS文件被“优化”之前,它工作正常。现在,我使用的是优化版当过我调用使用宽松的动画我得到这个错误:RequireJS:优化后包含jquery缓动包的问题

“jQuery.easing [jQuery.easing.def]是不是一个函数”(火狐)

“未捕获类型错误:对象#的特性 '未定义' 不是一个函数”(铬)


我包括我的JS是这样的:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.js"></script> 
<script src="http://gsgd.co.uk/sandbox/jquery/easing/jquery.easing.1.3.js"></script> 
<script data-main="/js/mesh-built.js" src="/js/libs/require.js"></script> 

我的主要JS网页看起来是这样的: http://thebeer.co/js/built/mesh-built.js

require(["globals","functionBank"],function(gb,r){ 

//myapp code 

}); 

全局看起来像这样:

http://thebeer.co/js/globals.js


和functionbank看起来像这样:

http://thebeer.co/js/functionBank.js


我唯一的想法是,监守jQuery是表述为全局变量,它以某种方式被传递,而不宽松包内的功能依赖附?我应该从主要的requireJS文件中添加easing插件吗?

忘了提:一旦剧本已被requireJS优化 此问题仅明显...

回答

3

的网格built.js文件似乎包括require.js内容。最好如果它不包含require.js(确保includeRequire:true是而不是在构建配置文件中指定。我的第一个想法是这个重复的需求导致了问题,它可能没有正确的引用jQuery和它被用来处理built.js文件。