【问题标题】:How would I use an only for IE8 and not for any other browser我将如何仅用于 IE8 而不能用于任何其他浏览器
【发布时间】:2016-04-06 05:41:35
【问题描述】:

我目前在一个网站上使用 jquery 3.0。我知道在 Jquery 2 中放弃了对 IE8 的支持,但是有没有办法将 jquery 1.9 用于 IE8 并在任何其他浏览器上使用 Jquery 3.0?

【问题讨论】:

  • 不知道 jquery 3.0 已经发布并准备好投入生产了吗?

标签: jquery web jquery-3


【解决方案1】:

您可以尝试使用 HTML 条件语句。这是一种老派的做法,而且有点极端(但无论如何,你的目标是 IE8)。

更多here。 更好here

这是我的想法:

<!--[if IE8]><script src="jquery2.0.js" "><![endif]-->
<!--[if IE9]>include something else [endif]-->

【讨论】:

    【解决方案2】:

    这似乎比它的价值要多得多。在 jQuery 的先前版本和当前版本之间,很多特性都被弃用了,您将不得不在许多情况下编写两次代码,而不是简单地添加一些简单的东西,例如 &lt;noscript&gt;。这也可能导致很多代码冲突和错误,否则不会发生。最后,用户可以随时编辑他们的代理字符串并完全绕过您的意图,这是互联网上相当常见的事件。

    话虽如此,你想要的代码是:var foo = navigator.userAgent;

    您需要compare foo to the known user agent strings然后 使用纯JavaScript 将您的jQuery 调用添加到适当的jQuery 版本。我还建议您根据 foo 的值切换代码以最大程度地减少代码冲突。

    您有两种可能也可行的选择:

    • 编写一个检查 userAgent 的页面,然后将用户转到一个为 jQuery 2 或 1 编码的页面。
    • 如果可能,请说服您的老板(或客户等)放弃对 IE8 的支持。截至本次回复时,IE 仅占 15.6% 的市场份额,IE 8 甚至没有在使用率最高的 10 个浏览器中排名based on W3Counter's metrics。这意味着根本不需要任何开关,您可以节省编码时间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-12
      • 2015-11-05
      • 1970-01-01
      • 2019-06-11
      • 2014-12-21
      • 1970-01-01
      • 2016-03-11
      相关资源
      最近更新 更多