我有一个页面,其中包括用于窗帘效果的jquery和用于滑块的其他页面。我面临的问题是我的两个jqueries不能一起工作。我该怎么办?
我的示例代码是
<!-- for slider -->
<script src="images/jquery-latest.js" type="text/javascript"></script>
<script src="images/jquery.bxslider2.min.js" type="text/javascript"></script>
<script src="images/scripts.js" type="text/javascript"></script>
<!-- for curtain -->
<script type="text/javascript" src="js/jquery-1.3.2.js"></script>
<script src="js/jquery.easing.1.3.js" type="text/javascript"></script>
答案 0 :(得分:16)
首先,尝试使用current jQuery version (1.7.2)并查看两个脚本是否都有效。
如果没有,请考虑使用与当前jQuery版本兼容的东西 - 如果某些东西需要jquery 1.3,它很长时间都没有更新。
如果你真的需要这两个脚本并且都需要不同的jQuery版本,你需要这样:
<script src=".../jquery-1.3.2.js"></script>
<script src="script-that-needs-132.js"></script>
<script>var jQuery132 = $.noConflict(true);</script>
<script src=".../jquery-1.7.2.js"></script>
要使用旧的jQuery,然后使用它包装代码:
(function($){
// here $ points to the old jQuery
})(jQuery132);
答案 1 :(得分:3)
删除其中一个,最好是<script type="text/javascript" src="js/jquery-1.3.2.js"></script>
答案 2 :(得分:2)
您可以使用
<script type="text/javascript" language="javascript">
var jq = jQuery.noConflict();
</script>
答案 3 :(得分:0)
你不能/不应该包含两个不同版本的jQuery。坚持一个(最近的一个应该是最好的选择)。如果你想要的插件只支持1.3之类的非常古老的版本,那么你应该选择一个更新的版本或者开始在代码中摆弄。