我有一个使用 jQuery 的应用程序。该应用程序可以使用几乎任何最新版本的 jQuery,例如 1.7 或 1.8。
谁能给我一个建议,告诉我如何编码我的应用程序,以最大限度地提高它在用户缓存中找到满足我需求的最新版本的 jQuery 的机会。例如,我应该尝试从 google CDN 中查找一个版本,在哪种情况下我应该尝试查找哪个版本?
我有一个使用 jQuery 的应用程序。该应用程序可以使用几乎任何最新版本的 jQuery,例如 1.7 或 1.8。
谁能给我一个建议,告诉我如何编码我的应用程序,以最大限度地提高它在用户缓存中找到满足我需求的最新版本的 jQuery 的机会。例如,我应该尝试从 google CDN 中查找一个版本,在哪种情况下我应该尝试查找哪个版本?
公共网站使用内容交付网络 (CDN) 非常普遍。要引用一个,您可以像任何其他本地文件一样将它们包含在脚本标记中:
jQuery 示例
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
谷歌示例
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
微软示例
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.8.0.min.js" type="text/javascript"></script>
这样做存在风险,例如使用 jQuery CDN 始终指向最新版本时。
在最近的几个版本中,一些方法已被弃用,即:toggle()
- 用于鼠标事件,live()
等die()
。
据我从 jQuery 论坛了解,那些不推荐使用的方法将在 1.9 版中永久删除。
此外 jQuery 计划发布 1.9 和 2.0 紧密结合。然而 2.0 不是 1.9 的延续,而是将同时开发。
2.0 将不支持 IE6、IE7 或 IE8。jQuery 1.9 将与所有以前的浏览器版本保持兼容。
在这里阅读。
由于这些原因,我不建议自动始终指向最新版本,而是明确引用您支持的特定版本。
这种情况很少发生,但可能会发生 CDN 关闭的情况。以防万一,因此您不必承担后果,您可以实施后备计划。
// Check if jQuery was initialized and if not (CDN was down for example), then
// load jQuery from a local source.
if(typeof jQuery === 'undefined'){
document.write(unescape("%3Cscript src='yourlocalpath/jquery.1.x.min.js' type='text/javascript'%3E%3C/script%3E"));
}
关于可用 CDN 的质量和性能,我在 royal.pingdom.com 上看到了这篇非常有趣的文章。
Pingdom 的报告显示,jQuery 最常用和免费的主机;谷歌、微软和Media Temple;已证明可靠但性能不一致。
为了评估这些网络,Pingdom 在欧洲和北美的多个地点进行了测试,每分钟一次,持续 30 天。
结果发现,这三个都提供了出色的可用性,但性能并非如此。
对于不使用 HTTPS 或安全服务器的网站,Media Temple 是迄今为止最快的,在欧洲仅次于谷歌,但在北美落后。对于 HTTPS 站点,Google 是欧洲最快的,Google 和 Microsoft 在北美的表现相似。
微软在欧洲的表现最差,但在北美总体上与谷歌并驾齐驱。
选择满足您需求的最新版本的 jQuery。此时,这将是 1.8。然后在免费且广泛使用的 CDN(可能是 Google 或 Microsoft)上链接到它。
您应该链接到特定版本的 jQuery。尽管有最新版本的 jQuery 的链接,但您不应该链接到该链接,因为当它发生变化时,您的网站可能会在您不知情的情况下崩溃。您应该只链接到特定版本的 jQuery。这是链接到 Google CDN 上的 1.8.1 的代码。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
如果你真的想优化你的浏览器缓存命中,你会选择并使用现在广泛部署的 jQuery 版本进行测试(我相信某个地方有关于每个版本的使用量的网络统计数据),然后你会定期更新它跟踪最常用的版本。我怀疑这是微优化,只需选择您测试过的任何最新版本都是合适的,并且会给您带来使用通用 CDN 的好处。
对于最新版本,您可以直接从 jQuery 加载:
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
您还可以从中加载其他内容交付网络。
一些流行的 CDN 是: