1

在我的项目中导入更多 jquery 文件时出现问题冲突。这里的上下文是:我正在运行一个没有导入 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。所以,我正在寻找可以在其中导入服务和解决方法的好方法。

4

0 回答 0