我以前使用的是jQuery 1.6。然后,需要一个与jQuery1.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>
不要同时使用这两个版本。只需升级到1.71.8即可。
有一些肮脏的技巧可以让它(部分)工作,但这会带来麻烦,需要大量的维护,并且下载到客户端的代码量是原来的两倍。你真的不想走那条路。
您需要了解$.noConflict()
的工作原理。您调用的第一个$.noConflict()
将$
重置为未定义,这意味着第一个$(document).ready()
将出错,因为$
不是您期望的函数。
如果你保留第二个$.noConfict()
,在你调用它之后,你会得到以下内容;
$
将指向jQuery 1.6.4jQuery
将指向jQuery 1.7.2