加载jQuery的条件注释替代方案

因为jQuery 2+不支持IE 8,所以我需要使用以前的版本:jQuery 1.9。

当使用IE> 8时,有没有办法在使用IE <= 8和jQuery 2+时包含jQuery 1.9。我尝试使用条件注释:

 .. googleapis jquery 1.9 .. <!--  .. googleapis jquery 2+ .. <!-- 

问题是它无法正常工作,我发现有关它的一些信息不再受支持: http : //msdn.microsoft.com/en-us/library/ie/hh801214( v = vs。85).aspx

还有另一种方式吗?

您希望IE8版本在注释掉的块中,但非IE9版本不是:

     

带警报的实时示例

IE8识别条件注释,但其他浏览器不识别(包括较新的IE)。

您也可能希望在第二个中使用!IE ,只是为了完整性,如上所述。

这将为Internet Explorer版本6-8提供不同版本的jQuery:

     

或者更容易阅读(但function相同):

     

Bravo to TJ Crowder(上图)给出了答案。 这个问题困扰着我,我遇到了一些麻烦,因为IE8有时会加载两个JQuery文件,或者由于文档的加载方式,我写的脚本不允许JQuery随后启动。 除了上面的答案之外,我实际上不得不颠倒两个条件的顺序,以确保在IE8中没有加载多个JQuery副本。

您可以检查服务器代码上的UserAgentString,并根据它包含一个或另一个。 以下是Internet Explorer用户代理列表: http : //www.useragentstring.com/pages/Internet%20Explorer/