2016-05-04 2 views
0

私は他のjQueryファイルを無効にしたり矛盾しているjQueryカスタムファイルを持っていますが、どうすればこの問題を解決できますか?以下を参照してください: マイカスタムファイル:ファイルの競合jQuery confliectを解決するには?

$(".search").keyup(function() 
{ 
var searchid = $(this).val(); 
var dataString = 'search='+ searchid; 
if(searchid!='') 
{ 
    $.ajax({ 
    type: "POST", 
    url: "search.php", 
    data: dataString, 
    cache: false, 
    success: function(html) 
    { 
    $("#result").html(html).show(); 
    } 
    }); 
}return false;  
}); 

<script src="js/jquery.isotope.min.js"></script> 
<script src="js/nprogress.js"></script> 

をこれが解決された場合、私は幸せを超えるだろう。

+0

競合するファイルを見つけることができません。本気ですか? –

+0

Jqueryの2つの異なるバージョンを使用していますか? –

+0

私はちょうど編集しました、競合するファイルは今では表示されています –

答えて

1

私はあなたが特定のjQueryのために知っていることを仮定しているが、競合である - あなたは、コンソールのエラーをチェックしたなど

次のようにあなたが自己実行匿名関数であなたのjQueryをラップすることができます:

(function($) { 
    $(".search").keyup(function() 
    { 
    var searchid = $(this).val(); 
    var dataString = 'search='+ searchid; 
    if(searchid!='') 
    { 
    $.ajax({ 
    type: "POST", 
    url: "search.php", 
    data: dataString, 
    cache: false, 
    success: function(html) 
     { 
     $("#result").html(html).show(); 
     } 
    }); 
    }return false;  
    }); 
})(jQuery); 

EDIT - 上記で何が起こったのかの説明。他のスクリプト/フレームワークとの潜在的な競合を防ぐために、jQueryオブジェクトを関数の引数として渡します(したがってfunction($))。これを行うメリットは、関数内でローカルで$を自由に使用できることです。 globalスコープの他のスクリプトと競合する恐れなし。

+0

jQueryのバージョンが含まれていますが、Ajaxのリロードされたコンテンツに関連しています。 –

+0

@A.Wolffあなたはおそらく正しいと思います。私の元の回答を書いている時点で、私はOPがコンソールのエラーをチェックしたと仮定していました。標準的なmu ltiple jQuery /スクリプトの競合。 –

0

私だけでそれをラップすることにより、問題を解決することができました:

$(document).ready(function() { 
//----- 
});