在jsp页面中,我使用的是struts2-jquery-plugin-3.2.1.jar(它使用内部jquery-1.6.4.js),我正在使用facebox(它使用jquery-1.4.3.min.js )。所以我的struts2-jquery-plugin-3.2.1.jar首先加载facebox jquery。但当我把jquery-1.4.3.min.js我的struts2-jquery-plugin-3.2.1.jar停止工作时,当我删除jquery-1.4.3.min.js时,我的facebox显然停止工作。我关注这些论坛:here和here但是无法解决这个问题。一个人建议我使用struts2-jquery-plugin的新版本,但我不能使用因为如果我使用新的struts2-jquery-plugin的版本然后我的项目的一些代码停止工作。请分享您对此问题的了解。
答案 0 :(得分:5)
您需要使用jQueryNoConflict功能:http://api.jquery.com/jQuery.noConflict/
所以您的库需要定义如下:
<script src='jquery-1.3.2.js'></script>
<script>
var jq132 = jQuery.noConflict();
</script>
<script src='jquery-1.4.2.js'></script>
<script>
var jq142 = jQuery.noConflict();
</script>
然后您可以像这样使用它们:
jq132.ajax(....);
jq142('#my-elem').hide();
答案 1 :(得分:0)
只需使用最新的jQuery(在你的情况下为1.6.4.js)它就可以了。不要更新到1.9,因为它包含多个重大更改。
如果删除jquery-1.4.3,没有理由说facebox应该停止工作。 1.4中包含的所有弃用方法都包含在1.6中。
检查控制台是否有错误。