ロードされているjQueryのバージョンを確認するにはどうすればよいですか?


466

クライアントマシンにロードされているjQueryのバージョンを確認するにはどうすればよいですか?クライアントにjQueryがロードされている可能性がありますが、それを確認する方法がわかりません。読み込まれている場合、次のようにバージョンとプレフィックスを確認するにはどうすればよいですか。

$('.class')
JQuery('.class')

2
ダウンロードするファイルとしてjQueryを含めた場合、クライアントにはjQueryがロードされている可能性があります。正確には何が問題なのですか?
Jared Farrish 2011

1
OPが何のために必要かについてDunnoが、jQueryを必要とするスクリプトまたはプラグインを作成している場合、それがないか、バージョンが古すぎるかどうかを確認してエラーをスローすることができます。
JJJ 2011

回答:


900
if (typeof jQuery != 'undefined') {  
    // jQuery is loaded => print the version
    alert(jQuery.fn.jquery);
}

29
現在読み込まれているjqueryのバージョンを確認する方法は2つあります:jQuery.fn.jqueryおよびjQuery().jquery(省略形:)$.fn.jquery $().jquery。私が書いた内容で、それあなたが深く掘るしたい場合はjqueryのソースコードへのリンクを持ちます。
ウズベクジョン2013

3
さらにシンプルなバージョン if (window.jQuery) { // jQuery is loaded => print the version alert(jQuery.fn.jquery); }
アシェラード

6
未定義のチェックは!==
plankguy 2017年

1
注小文字:)
赤エンドウ豆の

2
使用しないでくださいjQuery().jquery。何もせずにjQueryオブジェクトを作成します。答えが言うことを使用するだけです。

30

jQueryオブジェクトが存在するかどうかを確認するだけです:

if( typeof jQuery !== 'undefined' ) ... // jQuery loaded

jQuery().jquery バージョン番号があります。

接頭辞についてjQueryは、常に機能するはずです。使用したい場合は$、コードを関数にラップjQueryして、パラメーターとして渡すことができます。

(function( $ ) {
    $( '.class' ).doSomething();  // works always
})( jQuery )

3
if( jQuery )場合に例外をスローしますjQuery未知であり、それは動作しません。
Darin Dimitrov

多分それを包みtry {...}catch(e){...}ますか?
Akash

2
使用しないでくださいjQuery().jquery。それは無料でjQueryオブジェクトを作成します。(別の答えからコピーされたコメント)
törzsmókus

19
$.fn.jquery
// If there is concern that there may be multiple implementations of `$` then:
jQuery.fn.jquery

バージョン番号(通常は文字列)が返されると、jQueryがロードされ、そのバージョンが作業中のバージョンになります。ロードされていない場合はundefined、エラーが発生する可能性があります。

かなり古い質問で、コメントで私の回答をすでに述べた人が何人かいます。ただし、コメントとして残された素晴らしい答えが気付かれない場合もあります。特に、回答に対するコメントが多い場合は、宝石を探してそれらの山を掘り下げることに気づくかもしれません。うまくいけば、これは誰かを助けます!


1
@Janarいいえ、まったく同じではありません。対照的に、IMOは非常に複雑です。
Rockin4Life33 2017

18

…この方法は今のところ言及されていないため、コンソールを開いて次のように入力します。

$ === jQuery

上記の@Juhana $().jqueryはバージョン番号を返します。


のようなもの($ === jQuery)?$().jquery:'no jquery';
UselesssCat 2017年

1
OPはロードされたバージョンを確認するように求めました。これは質問の答えにはなりません。
山本章

16

これが、jQueryがロードされているかどうかを確認するための最短かつ最も簡単な方法であることがわかりました。

if (window.jQuery) {
    // jQuery is available.

    // Print the jQuery version, e.g. "1.0.0":
    console.log(window.jQuery.fn.jquery);
}

この方法は、http://html5boilerplate.comなどで使用されています。


@AndreFigueiredo jQueryがロードされていることを確認した後、バージョン番号を取得する方法を含めるように回答を編集しました。
Markus Amalthea Magnuson

5

私の好みは:

console.debug("jQuery "+ (jQuery ? $().jquery : "NOT") +" loaded")

結果:

jQuery 1.8.0が読み込まれました


私は:undefined
Joe L.

これは少し良いですが、アプリで作業する場合、ロギングはそれほど役に立ちません。最初に変数を保存する方がよいでしょう。let has$ = typeof jQuery === 'function'; console.log('jQuery' + (has$ ? ` version ${jQuery.fn.jquery} loaded.` : ' is not loaded.'));

3

これを実際にIEのtry / catchブロックでラップする必要があります。

// Ensure jquery is loaded -- syntaxed for IE compatibility
try
{
    var jqueryIsLoaded=jQuery;
    jQueryIsLoaded=true;
}
catch(err)
{
    var jQueryIsLoaded=false;
}
if(jQueryIsLoaded)
{
    $(function(){
        /** site level jquery code here **/
    });
}
else
{
    // Jquery not loaded
}

IEは処理しませんtypeof jQuery != 'undefined'か?これはすべてのIEに当てはまりますか、それとも古いIEだけですか?
JJJ 2011

レガシーバージョン用であることを確認してください。それでも、ブラウザの障害であるかどうかに関係なく、ページが機能しなくなるという大きな旧式のJSエラーよりも恥ずかしいことです;)
AlienWebguy

これは本当に私を助けてくれました。WatiNを使用してjQueryがロードされているかどうかを確認するために、FirefoxとIEで正確な動作を取得するのに苦労していました。この回避策で、私はとても幸せです。おかげさまで!
rahoolm 14


1

開発者の[ツール]> [コンソール]に移動し、次のコマンドのいずれかを記述します jQuery.fn.jquery console.log(jQuery().jquery);



-2
if (jQuery){
   //jquery loaded
}

.....


1
他のいくつかのライブラリはを使用しています$
Jared Farrish 2011

2
プロトタイプを使用している場合はどうなりますか?または使用する他の何か$?これはjQueryに固有のものではありません。
JJJ 2011

jQuery読み込まれていない場合はどうなりますか?(それはをスローしますReferenceError)。上記の答えは正しいので、人々があなたの答えに反対票を投じています。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.