Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JQuery冲突不起作用_Javascript_Jquery_Autocomplete - Fatal编程技术网

Javascript JQuery冲突不起作用

Javascript JQuery冲突不起作用,javascript,jquery,autocomplete,Javascript,Jquery,Autocomplete,我试图避免jquery 1.2.6和最新版本1.11.3 boostrap.js之间的冲突: <script type="text/javascript" src="js/jquery.js"></script> <script type='text/javascript' src='js/custom.js'></script> <script type="text/javascript"> $().ready(funct

我试图避免jquery 1.2.6和最新版本1.11.3 boostrap.js之间的冲突:

<script type="text/javascript" src="js/jquery.js"></script>
<script type='text/javascript' src='js/custom.js'></script>
  <script type="text/javascript">
    $().ready(function() {
    var autocm = jQuery.noConflict();
    autocm("#search").autocomplete("php/getvalues.php", {
        width: 383,
        matchContains: true,
        //mustMatch: false,
        //minChars: 0,
        //multiple: true,
        //highlight: true,
        //multipleSeparator: ",",
        selectFirst: false
    });(autocm);
});
</script>



    <script type='text/javascript' src="js/jquery-1.11.3.min.js"></script>
    <script type='text/javascript' src="js/bootstrap.min.js"></script>
    <script type='text/javascript' src="js/carousel.js"></script>
 $('#carousel-text').html($('#slide-content-0').html());

        //Handles the carousel thumbnails
        $('[id^=carousel-selector-]').click( function(){
                var id_selector = $(this).attr("id");
                var id = id_selector.substr(id_selector.length-1);
                var id = parseInt(id);
                $('#myCarousel').carousel(id);
        });


        // When the carousel slides, auto update the text
        $('#myCarousel').on('slid', function (e) {
                var id = $('.item.active').data('slide-number');
                $('#carousel-text').html($('#slide-content-'+id).html());
        });

$().ready(函数()){
var autocm=jQuery.noConflict();
autocm(“#search”).autocomplete(“php/getvalues.php”{
宽度:383,
对,,
//mustMatch:false,
//明查斯:0,
//多重:对,
//推荐理由:没错,
//多重分隔符:“,”,
selectFirst:false
})(autocm),;
});
$('#carousel text').html($('#slide-content-0').html());
//处理旋转木马缩略图
$('[id^=carousel selector-]')。单击(函数(){
var id_selector=$(this.attr(“id”);
var id=id\u selector.substr(id\u selector.length-1);
var id=parseInt(id);
$(#myCarousel')。carousel(id);
});
//旋转木马滑动时,自动更新文本
$('myCarousel')。在('slided',函数(e)上{
变量id=$('.item.active')。数据('slide-number');
$('#carousel text').html($('#幻灯片内容-'+id).html());
});
如果我启用

    <script type='text/javascript' src="js/jquery-1.11.3.min.js"></script>
    <script type='text/javascript' src="js/bootstrap.min.js"></script>
    <script type='text/javascript' src="js/carousel.js"></script>

自动完成功能不起作用

自动完成功能不起作用

我的猜测——这必须是一个猜测,因为您没有告诉我们关于自动完成的任何信息——是它使用了jQuery1.2.6中不再存在的内容,或者可能与jQuery1.11.3中的内容不太一样。您正在执行的
noConflict
调用所做的就是在
ready
回调中保护您的代码;当用户执行某项操作时,自动完成程序中使用
$
jQuery
访问jQuery的任何代码都将使用v1.11.3

这里最好的做法是不要尝试在同一页面中使用两个版本的jQuery。非常非常非常第二个最好的方法是编辑autocomplete以获取对
jQuery
的本地引用,该引用在加载时生效,并继续使用该引用。(一个写得好的插件可以做到这一点,但是有很多写得不太好的插件…)

这可能很简单,只要把它放在
js/custom.js
文件的开头:

(function($) {
    var jQuery = $;
…最后是:

})(jQuery);

但同样,这是一个非常遥远的次优解决方案。最好不要使用jQuery 1.2.6。完全可以。

以下是我所做的

<script type="text/javascript">
var autocm = jQuery.noConflict();
autocm().ready(function() {
    autocm("#search").autocomplete("php/getvalues.php", {
        width: 383,
        matchContains: true,
        //mustMatch: false,
        //minChars: 0,
        //multiple: true,
        //highlight: true,
        //multipleSeparator: ",",
        selectFirst: false
    });
});(autocm);
</script>

var autocm=jQuery.noConflict();
autocm().ready(函数()){
autocm(“#search”).autocomplete(“php/getvalues.php”{
宽度:383,
对,,
//mustMatch:false,
//明查斯:0,
//多重:对,
//推荐理由:没错,
//多重分隔符:“,”,
selectFirst:false
});
});(自动驾驶);

工作得很好。。只是在.ready(function(){

之前添加了无冲突方法。更大的问题是:除了更新的东西之外,为什么还要继续使用已经过时多年的jQuery版本?
autocm(#search”).autocomplete(“php/getvalues.php”,{/*…*/})(autocm)
结尾的那一点是完全不可能的。这有点可疑。@T.J.Crowder.非常感谢,伙计……你刚刚睁开了我的眼睛……让它工作起来了……:)这应该不会有任何区别。