어떤 버전의 jQuery가로드되었는지 확인하는 방법은 무엇입니까?


466

클라이언트 시스템에 어떤 버전의 jQuery가로드되어 있는지 확인하려면 어떻게합니까? 클라이언트에 jQuery 가로 드되었을 수 있지만 확인 방법을 모르겠습니다. 그들이로드 된 경우 버전과 접두사를 어떻게 확인합니까?

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

2
다운로드 할 파일로 클라이언트를 포함시킨 경우 클라이언트에 jQuery가로드되었을 수 있습니다. 정확히 무엇이 문제입니까?
Jared Farrish

1
OP에 필요한 것이 무엇인지 모르지만 jQuery가 필요한 스크립트 또는 플러그인을 만드는 경우 버전이 없거나 너무 오래된 버전이면 오류를 확인하고 던질 수 있습니다.
JJJ

답변:


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

29
현재로드 된 jquery 버전을 확인하는 두 가지 방법이 있습니다 : jQuery.fn.jqueryjQuery().jquery(약식 :) $.fn.jquery $().jquery. 내가 쓴 세부 사항에 당신이 깊이 파고하려는 경우 JQuery와 소스 코드에 대한 링크.
우즈 베키 온

3
더 간단한 버전 if (window.jQuery) { // jQuery is loaded => print the version alert(jQuery.fn.jquery); }
asherrard

6
undefined에 대한 점검은 다음과 같아야합니다!==
plankguy

1
소문자 참고 :)
The Red Pea

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

18

…이 방법을 지금까지 언급하지 않았기 때문에 콘솔을 열고 다음을 입력하십시오.

$ === jQuery

위에서 언급 한 @ Juhana $().jquery는 버전 번호를 반환합니다.


뭔가 같은($ === jQuery)?$().jquery:'no jquery';
UselesssCat

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

레거시 버전을위한 것입니다. 여전히 브라우저의 결함 여부에 관계없이 페이지가 작동하지 못하게하는 큰 ol 'JS 오류보다 더 난처한 점이 있습니다.)
AlienWebguy

이것은 정말 많은 도움이되었습니다. jQuery가 WatiN을 사용하고 있는지 여부를 확인하기 위해 Firefox와 IE에서 정확한 동작을 얻는 데 어려움을 겪고있었습니다. 이제이 해결 방법으로 매우 행복합니다. 고마워!
rahoolm


1

개발자 도구> 콘솔로 이동하여 다음 명령 중 하나를 작성하십시오. jQuery.fn.jquery console.log(jQuery().jquery);


0

에 따라 템플릿 몬스터 블로그 , 입력, 스크립트 아래이 당신이 지금 통과하고있는 사이트의 JQuery와의 버전을 제공 할 것입니다.

 1. console.log(jQuery.fn.jquery);
 2. console.log(jQuery().jquery);

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

.....


1
다른 라이브러리는을 사용 $합니다.
Jared Farrish

2
그들이 프로토 타입을 사용한다면? 아니면 다른 것을 사용 $합니까? jQuery에 고유하지 않습니다.
JJJ

만약에 jQuery로드되지 않는 이유는 무엇입니까? (을 던질 것이다 ReferenceError). 위의 답변은 정확하며 사람들이 귀하의 답변을 다운 투표하는 이유입니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.