加载JavaScript文件 - 条件连接

时间:2015-04-24 21:03:14

标签: javascript conditional-comments

为了减少http请求,我正在使用grunt将我的所有脚本合并为2个文件:scripts-head.js和scripts-body.js。

有一些脚本(例如垫片)只需要提供给传统的IE浏览器。我应该这样:

  1. 使用<!--[if lt IE 9]>之类的条件评论 - 但现在这意味着更多的http请求。
  2. 只需添加旧版IE脚本以及其他连接文件 - 这将为现代浏览器带来额外的未使用代码,但意味着更少的http请求。
  3. 另一个选择?? (某种方式做条件连接?)

2 个答案:

答案 0 :(得分:1)

  1. 使用条件评论。这样更干净。

答案 1 :(得分:0)

我认为现在普遍的共识是,不要担心浏览器版本(你无法全部跟踪它们),人们会使用像Modernizr这样的库进行特征检测,并为缺少的功能加载polyfill。

Modernizr本身带有一个异步加载器,允许您根据功能测试的真实性指定加载polyfill脚本(读取:如果需要,只发出对polyfill的额外请求)。

在任何策略中,不要担心这一个额外的HTTP请求,因为一旦浏览器缓存了该文件,就不会有任何请求。