0

jquery プラグインによって駆動されるサムネイル スクローラーがあり、すべて正常に動作します。統合しようとしているプラ​​グインは個別に完璧に動作しますが、実際のマークアップを追加しようとすると、Firebug でチェックすると、次の奇妙なエラーが表示されます。Uncaught TypeError: Cannot call method 'extend' of undefined

マークアップ全体を jsfiddle またはここに投稿することはできないため、そのエラーへのリンクを提供することをお勧めします。何が起こっているのかを理解するのに役立つかもしれません。とてもストレスです。

これが私の試みです。

4

1 に答える 1

2

いわゆる「競合なし」モードでjQueryを実行しています。これは基本的に、$関数をエントリポイントとして使用しないことになります。モジュールがこれを念頭に置いてプログラムされていない場合、このような障害が発生します。

いずれか:1)競合なしモードでjQueryを使用しない

他のjavascriptライブラリを使用する予定がない場合(実際には、1つで十分です)、このルートを使用しても問題ありません。

このコードを削除するだけです

* jQuery.noConflict() for using the plugin along with other libraries. 
   You can remove it if you won't use other libraries (e.g. prototype, scriptaculous etc.) or 
   if you include jQuery before other libraries in yourdocument's head tag. 
   [more info: http://docs.jquery.com/Using_jQuery_with_Other_Libraries] */
jQuery.noConflict(); 

...そして、より深い理解のために参照をコメントするドキュメントをチェックしてください:http: //docs.jquery.com/Using_jQuery_with_Other_Libraries

ドキュメントを読むのに苦労することはありません!

または:2)モジュールのソースコードをフォークして修正します (githubまたは他のオープンソースリポジトリにある場合)

(現在のように)利用可能jQueryであると想定するのではなく、より安全なエントリポイントを使用するようにモジュールを書き直す必要があります。$コピーを修正することもできますが、作業を行っている場合は、他の誰かが恩恵を受けることができる場所にそれを配置することもできます-結局のところ、他の人の作業から恩恵を受けています(jQuery、モジュール、など):D

于 2012-05-25T22:15:15.073 に答える