多个jQuery版本[建议]

时间:2015-01-21 10:27:49

标签: javascript jquery

我想听听你对我即将描述的问题的建议。

我是大型网络应用程序开发团队的一员,该应用程序大量使用jQuery,在过去的7到8年中不断开发。由于使用寿命很长,在此期间,许多版本的jQuery已经发布并在应用程序中使用。

由于版本之间存在不兼容的可能性,您对开发需要jQuery的功能有何建议?

  1. 在每个使用它的页面中包含特定版本的jQuery?
  2. 包含一个通用的jQuery.js文件,该文件会不断更新到最新版本?
  3. 别的什么?
  4. 两种选择都有利有弊,但我很想听听你在类似情况下的经历。

    提前致谢。

2 个答案:

答案 0 :(得分:1)

使用跨页面一致的特定版本的jQuery(不要在不同的页面上使用不同的版本)。尽可能主动地更新。很少有jQuery版本实际上破坏了向后兼容性,当他们这样做时,它会在宣布发布的博客文章中记录。

你如何这取决于你。通常,最好使用远期缓存标头和特定文件名来提供不变的文件,例如: jquery-1.11.2.js,尽管在更新到新版本时更新到处都有点痛苦。这样您就可以从浏览器缓存中获得使用,但保证在文件实际发生变化时进行更新。 (因为你改了名字。)

jquery-1.11.2.js可以是您自己的服务器或使用完全限定版本号的CDN提供的文件(例如,使用Google的CDN,它将是//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js;使用jQuery的[MaxCDN],它将是//code.jquery.com/jquery-1.11.2.min.js)。使用CDN的优点是可能被其他站点使用,因此已经在缓存中(如果没有,您仍然可以从边缘缓存中受益);当然也有依赖该CDN的缺点。 (如果CDN失败,你可以做回落的事情,但如果CDN失败,失败可能需要一段时间,用户可能会感到沮丧并离开。但是that doesn't happen very often at all。)

如果为自己服务,请考虑将jQuery与所有其他缩小的JavaScript捆绑到一个文件中,以最大限度地减少HTTP请求。例如,或者:

<!-- Using a CDN -->
<script src="//the-cdn.example.com/path/jquery-1.11.2.min.js"></script>
<script src="your-site-v23.js"></script>

<!-- Serving yourself -->
<script src="your-site-v23-including-jquery.js"></script>

答案 1 :(得分:-3)

最好的选择是总是使用最新版本的jQuery,因为(大多数情况下)所有更新都是有用的。在一个完美的世界中,您应该更新您的代码以与最新版本兼容,但这取决于您和您的时间表/支出。