如何检查客户端计算机上加载的jQuery版本? 客户端可能已加载jQuery但我不知道如何检查它。 如果它们已加载,我如何检查版本和前缀,例如:
$('.class')
JQuery('.class')
...只是因为到目前为止尚未提及此方法 - 打开控制台并键入:
$ === jQuery
正如@Juhana上面提到的$().jquery
将返回版本号。
我的偏好是:
console.debug("jQuery "+ (jQuery ? $().jquery : "NOT") +" loaded")
结果:
jQuery 1.8.0加载
$.fn.jquery
// If there is concern that there may be multiple implementations of `$` then:
jQuery.fn.jquery
如果你得到一个版本号 - 通常是一个字符串 - 然后加载jQuery,那就是你正在使用的版本。 如果没有加载,那么你应该回到
undefined
或甚至是错误。
很老的问题,我看到一些人已经在评论中提到了我的答案。 但是,我发现有时作为评论留下的好答案可能会被忽视; 特别是当对答案有很多评论时,你可能会发现自己正在挖掘他们寻找宝石的成堆。 希望这可以帮助别人!
根据模板怪物博客 ,键入,这些下面的脚本将为您提供您正在遍历的站点中的jquery的版本。
1. console.log(jQuery.fn.jquery);
2. console.log(jQuery().jquery);
转到开发人员的工具>控制台并编写以下命令之一jQuery.fn.jquery
console.log(jQuery().jquery);
在一行和最少的击键(哎呀!):
alert($().jquery);
if (typeof jQuery != 'undefined') {
// jQuery is loaded => print the version
alert(jQuery.fn.jquery);
}
您可以检查jQuery
对象是否存在:
if( typeof jQuery !== 'undefined' ) ... // jQuery loaded
jQuery().jquery
有版本号。
至于前缀, jQuery
应该始终有效。 如果你想使用$
你可以将你的代码包装到一个函数中,并将jQuery
作为参数传递给它:
(function( $ ) {
$( '.class' ).doSomething(); // works always
})( jQuery )
if (jQuery){
//jquery loaded
}
.....
你应该将它实际包装在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
}
我发现这是检查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和其他人使用此方法。