異なるjqueryバージョンが競合した場合の対処方法

coldplay.xixi
リリース: 2020-11-30 15:17:00
オリジナル
1872 人が閲覧しました

異なる jquery バージョン間の競合の解決策: まず、[1.4.2] のソース コードの最後に関連するコードを追加し、次に、[ のフレームワークに基づいて、すべてのプラグインの先頭に関連するコードを追加します。 1.4.2] コード; 最後に、[jQuery1.4.2] に基づく選択関数を使用したい場合は、[$j4(element)] を使用します。

異なるjqueryバージョンが競合した場合の対処方法

#このチュートリアルの動作環境: Windows7 システム、jQuery1.3.2&&jQuery1.4.2 バージョンこの方法は、すべてのブランドのコンピューターに適しています。

異なる jQuery バージョン間の競合の解決策:

ケース: jQuery 1.3.2 と 1.4.2 の間の競合を解決します。

最初のステップ: 1.4.2 のソース コードの最後に次の文を追加します:

var $j4 = jQuery.noConflict(true);
ログイン後にコピー

ここに追加する理由ソース コードは大きなものとは異なります ほとんどの記事では、必要なときにソース コードを追加することに言及しています。これは、1.4.2 ベースの多くのプラグインを追加する必要があるためです。ここに追加すると、このコードをあまりにも多くのプラグに追加することによって発生する重複を避けることができます-ins。この文は、1.4.2 の jQuery と $ の参照権限をすべて放棄します。つまり、1.4.2 ベースのプラグインでは jQuery と $ を使用できなくなります。同時に $j4 に新しい名前空間を与えます (これは window の属性です)。 1.4.2 のソース コードを見ると、実際に次の 2 つの文が実行されていることがわかります。

window.$=_$;
window.jQuery=_jQuery;
ログイン後にコピー

原理は

window.$=_temp$ (戻り値) と同じです。名前空間)、名前が異なります。

ステップ 2: 1.4.2 フレームワークに基づくすべてのプラグインの先頭に次のコードを追加します。

var _temp$ = window.$,_tempjQuery = window.jQuery;
ログイン後にコピー

jQuery1 の $ と jQuery を配置します。 3.2 一時変数スペースに移動します:

window.$ = $j4;
ログイン後にコピー

この文と次の文はすべて、jQuery と $ を正しく使用するための中間コードです。次の

$j4 は、正しい参照を与えるためのものです。

window.jQuery = $j4;
ログイン後にコピー

最初に一時変数を保存する必要がある理由は 3 つあります:

①. 大量の jQuery プラグイン ソース コードを変更したくありません。変更しないことをお勧めします。変更した場合でも、そのままにしておきます。できるだけ変更しないようにしてください。また、途中の元のコードを変更せずに、先頭と末尾に変更したコードを追加することも良い方法です。

②. 1.4.2 では jQuery と $ の制御を放棄しましたが、既存のプラグイン コードはそれらを参照として使用します。その他のプラグインも、jQuery 下のプラグインでない限り、$ または jQuery で参照する必要があります。

③. 1.3.2 では、プラグインが

window.$window.jQuery を直接使用して jQuery と $ を参照するのを防ぐため、これは稀ではありますが、念のため。

中央の元のコードはそのままで、最後に次のコードが追加されます。

window.$ = _temp$;//将$的引用权限返还给jQuery1.3.
window.jQuery = _tempjQuery;//将jQuery的引用权限返还给jQuery1.3.
ログイン後にコピー

ステップ 3: jQuery1 に基づく選択関数を使用する場合。 4.2 以降では、$j4(element ) のみを使用できます。

要約: これまでのところ実現可能な解決策: jQuery1.4.2 は $ と jQuery の制御権限を完全に放棄します。 1.3.2 $ の制御権は放棄するが、jQuery の権限は放棄しない 実際、jQuery も放棄することができますが、別名 $j3 を与える必要があります。 $ の制御権限を取得するプロトタイプを jQuery1.3.2 の背後に配置するのが最善です。ただ、今後 jQuery1.4.2 を使いたい場合は $j4 を使って参照する必要があります。しかし、この方法では、jQuery フレームワークのバージョンの競合がどれほど多くても、それらはすべて解決されます。 jQuery 1.2 になったらどうなるか、(2) の実行手順を参照してください。ただし、最初の手順は次のように変更されます。

var $j2 = jQuery.noConflict(true);
ログイン後にコピー

3 番目の手順は

$j2(element) を使用します。原則は同じです。

この記事で説明されている内容は、すべての人の jQuery プログラミングにとって一定の参考になると思います。

関連する無料学習の推奨事項:

JavaScript (ビデオ)

以上が異なるjqueryバージョンが競合した場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!