如何检查客户端机器上加载了jQuery的哪个版本?客户端可能有jQuery加载,但我不知道如何检查它。如果他们有加载,我如何检查版本和前缀,如:

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

当前回答

我发现这是检查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和其他公司使用了这种方法。

其他回答

在一行和最少的按键(哎呀!):

alert($().jquery);

我发现这是检查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和其他公司使用了这种方法。

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

你应该在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
}

我的goto意思是确定版本:

$.fn.jquery

另一个类似的选项:

$().jQuery

如果有人担心可能有多种$ - making $的实现。然后使用jQuery代替:

jQuery.fn.jquery

最近我在使用$.fn时遇到了一些问题。Jquery和$()。jQuery在一些网站上使用,所以我想注意第三个简单的命令来获取jQuery版本。

如果你得到一个版本号——通常是字符串形式——那么jQuery就会被加载,这就是你正在使用的版本。如果没有加载,那么你应该得到undefined,甚至可能是一个错误。

这是一个很老的问题,我看到一些人已经在评论中提到了我的答案。然而,我发现有时作为评论留下的好答案会被忽视;特别是当一个答案有很多评论时,你可能会发现自己在一堆评论中寻找一个宝石。希望这能帮助到一些人!