我试图使用requirejs加载一个插件,但是偶尔会收到一个错误,“$.fn是未定义的”,但如果我重新加载页面,错误消失几乎像现在
jquery被缓存,问题被删除.我正在加载我的图书馆:
require(["jquery-1.4","/script/jquery.autoSuggest.packed.js"],function($) { $(function() { //code }); });
你能看到这个实现有什么问题会导致这个错误吗?要求js正在添加到页面:
<script type="text/javascript" src="http://website.co.uk/frameworks/requirejs/0.2.4/sharedmodules/require.js"> </script> <script type="text/javascript"> requireMap = { "jquery-1.4":"http://website.co.uk/sharedmodules/jquery-1.4" }; require({ baseUrl: 'http://website.co.uk/',paths: requireMap }); </script>
这不能改变,因为它是我使用的框架的一部分.
有什么建议么?
谢谢!
解决方法
订单插件被删除.使用垫片加载如下
requirejs.config({ paths: { 'jquery': 'https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min','bootstrap': '../bootstrap/js/bootstrap.min','select2': 'vendor/select2','jshashtable': 'vendor/jshashtable-2.1','jquery.numberformatter': 'vendor/jquery.numberformatter-1.2.3.min','jq-datepicker': 'vendor/bootstrap-datepicker','jq-datepicker.da': 'vendor/bootstrap-datepicker.da' },// Use shim for plugins that does not support AMD shim: { 'bootstrap': ['jquery'],'select2': ['jquery'],'jq-datepicker': ['jquery'],'jshashtable': ['jquery'],'jquery.numberformatter': ['jquery','jshashtable'] },});