我的代码运行在哪个jQuery版本上?

时间:2015-11-12 08:15:06

标签: javascript jquery version

我有一段使用最新版本2.1.4编写的jQuery代码。 我的脚本将在许多客户端网站上加载和运行。这些网站加载了不同版本的jQuery,或者根本没有加载jQuery。

我想实现一些逻辑说"如果没有jQuery,或者jQuery版本低于x,请在运行我的脚本之前加载我自己的jQuery。"

如何检查哪些jQuery版本的代码运行良好,哪些版本失败?

4 个答案:

答案 0 :(得分:0)

我认为您必须阅读文档或补丁说明。如果你没有使用大量的jQuery,除非他们自己不加载它,否则可能没有必要。根据您使用的方法类型,它可能与版本不同,因为我不相信它们会是一些更原始的版本

答案 1 :(得分:0)

检查是否存在jquery:

if(!window.jQuery){
   // jQuery Not present or Not loaded uptil now.
}

获取jQuery版本:

var _ver = jQuery.fn.jquery;

要检查您的应用程序是否适用于最低版本,您应该进行一些研究,并逐个包含不同版本的jQuery进行检查。

答案 2 :(得分:0)

像void说的那样,检查是否加载了jquery以及加载了什么版本,如有必要,加载自己的版本:

<script>
if(!window.jQuery || jquery.fn.jquery < 'minimal_version')
{
   var script = document.createElement('script');
   script.type = "text/javascript";
   script.src = "path/to/jQuery";
   document.getElementsByTagName('head')[0].appendChild(script);
}
</script>

答案 3 :(得分:0)

var jQueryNeeded = 2.1;

if (!window.jQuery || (window.jQuery && parseFloat(window.jQuery.fn.jquery) < jQueryNeeded)) {
    var script = document.createElement("script");
    // you can update this link according to the path where jquery is stored
    script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/'+ jQueryNeeded +'/jquery.min.js';
    script.type = 'text/javascript';
    // better to apend to header since you need to be sure that jquery is loaded before your script
    document.getElementsByTagName("head")[0].appendChild(script);
}

关于加载jQuery,你可以在这里阅读为什么use a CDN

可以

通常不是在标头中加载js的最佳方法,但由于你的脚本是在页脚中加载的(它应该!),最好在标题中附加jquery以确保按顺序遵循顺序。