0

私は、http: //www.virtualmob.co.uk/solutions.htmlのように正常に動作するすべてのページで、ウェブサイトでjquery coda slider 2.0を使用しています。

しかし、ギャラリーページhttp://www.virtualmob.co.uk/gallery.htmlにギャラリーを追加すると

web.js と競合し、ブラウザーで以下のエラーが表示されます。

キャッチされていない TypeError: null のメソッド 'removeClass' を呼び出せません

行番号 jquery.coda-slider-2.0.js:9 で

$.noConflict();を試しました。以下で述べたように、

$.noConflict();
$(function(){
// Remove the coda-slider-no-js class from the body
$("body").removeClass("coda-slider-no-js");
// Preloader
$(".coda-slider").children('.panel').hide().end().prepend('<p class="loading">Loading...<br /><img src="images/ajax-loader.gif" alt="loading..." /></p>');
});`

しかし、それでも機能せず、以下のエラーが表示されます

 Uncaught TypeError: Property '$' of object [object Window] is not a function 

これもweb.jsに追加しようとしましたが、それも役に立ちませんでした

この競合を削除する方法を教えてください。

4

2 に答える 2

1

$inを使用し$.noConflictています。競合を避けたい場合は、jQuery代わりにキーワードを使用$し、戻り値を変数に保存します。

var $ref = jQuery.noConflict();
$ref(function(){
  // ... 
})

コードをクロージャーに入れることもできます。

(function($){
    $(function(){
       $('body').foo()
    })
})(jQuery);
于 2012-12-01T00:28:33.747 に答える
0

他のユーザーの場合、以下の言及で解決しました:

上記の投稿でガイドされているように、以下の行の言及を使用します

(function($){
    $(function(){
       $('body').foo()
    });
})(jQuery);

次に$.document.ready、HTMLページにあるスクリプトを移動して、スクリプトをjsファイルに開始します。動作します。:)

于 2012-12-01T00:42:35.830 に答える