之前我使用的是jQuery 1.6。然后,需要一个与jQuery 1.7一起使用的幻灯片。
这两个版本在我的HTML页面上都存在冲突。任何避免jQuery冲突的解决方案都将在下面的代码中得到理解......
<script src="js/jquery-1.6.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
$.noConflict();
$(document).ready(function(){
$('#nav ul').superfish();
packages_slider();
testimonials_slider();
set_datepicker();
set_select();
set_captcha(true);
validation();
jquery_miscellaneous();
});
</script>
<script src="js/jquery-ui.1.8.16.min.js" type="text/javascript"></script>
<script src="js/jquery.easing.1.3.js" type="text/javascript"></script>
<script src="js/sliders.js" type="text/javascript"></script>
<script src="js/superfish.js" type="text/javascript"></script>
<script src="js/pdate.js" type="text/javascript"></script>
<script src="js/jquery.datepick.pack.js" type="text/javascript"></script>
<script src="js/jquery.selectbox-0.1.3.min.js" type="text/javascript"></script>
<script src="js/jquery.validate.min.js" type="text/javascript"></script>
<script src="js/jquery.form.js" type="text/javascript"></script>
<script src="js/miscellaneous.js" type="text/javascript"></script>
<script type="text/javascript" src="js/jquery-1.7.2.min.js"> </script>
<script type="text/javascript">
$.noConflict();
jQuery(document).ready(function($){
$('#basic-slider').advancedSlider({width: 1200,
height: 600,
}
});
});
</script>
<script type="text/javascript" src="js/jquery.transition.min.js"></script>
<script type="text/javascript" src="js/jquery.advancedSlider.min.js"></script>
答案 0 :(得分:4)
不要同时使用这两个版本。只需升级到 1.7 1.8。
有一些肮脏的技巧可以让这个(部分)工作,但是它要求麻烦,很多维护地狱,以及下载到客户端的代码量的两倍。你真的不想走那条路。
答案 1 :(得分:0)
您需要了解$.noConflict()
works的方式。您调用的第一个$.noConflict()
会将$
重置为未定义,这意味着第一个$(document).ready()
会出错,因为$
不是您期望的功能。
如果你保留第二个$.noConfict()
,在你打电话之后,你将拥有以下内容;
$
将指向jQuery 1.6.4 jQuery
将指向jQuery 1.7.2