在我的项目中导入更多jquery文件时遇到问题冲突。这里的上下文是:我正在运行一个没有import requirejs的项目,在这个项目上我已经导入了jquery和一些jquery插件,它工作正常。现在,我需要使用来自其他网站的服务,它需要使用requirejs从该网站加载一些javascript文件:
prefixUrl = "http://mysite.com";
require = {
baseUrl : prefixUrl + "/js",
waitSeconds : 30,
paths : {
"jquery" : "http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min",
"jquery.validate" : "/jquery.validate.min-1.8.1",
"jquery.string" : "/jQueryString-2.0.2-Min",
"jquery.cookie" : "/jquery.cookie",
"jquery.lightbox" : "/lightbox/jquery.lightbox",
"thickbox" : "/thickbox/thickbox",
"marketo.form" : "mktFormSupport",
"templates" : "../templates",
"login" : "/cloud-workspaces-extension/js/login",
"rememberme-checkbox" : "/platform-extension/javascript/iphone-style-checkboxes"
},
shim : {
'jquery.validate' : [ "jquery" ],
'jquery.string' : [ "jquery" ],
'jquery.cookie' : [ "jquery" ],
'jquery.lightbox' : [ "jquery" ],
"thickbox" : [ "jquery" ],
"marketo.form" : {
deps : [ "jquery" ],
exports : "Mkto"
},
"rememberme-checkbox" : [ "jquery" ]
},
deps : [ "jquery", "jquery.validate", "jquery.string", "jquery.cookie" ].
callback: function(){
// handle
}
}
正如您所看到的,它将从googleapis加载更多jquery文件1.7。这意味着它将覆盖我项目中的当前jquery(我没有使用jquery noConflict)和一些jquery插件,这些插件在页面加载和文档准备就绪时重置并删除实例的句柄。
那么,任何人都可以帮我找到另一种解决方案吗?我可以使用jquery noconflict来获取我网站上的当前内容,但这意味着我将取代很多在我的网站上运行良好的javascript。所以,我正在寻找可以导入服务和解决方法的好方法。