我将如何仅对 IE8 使用而不对任何其他浏览器使用

How would I use an only for IE8 and not for any other browser

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

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

更多 here。 更好here

这是我的想法:

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

这似乎比它的价值要多得多。 jQuery 的先前版本和当前版本之间弃用了如此多的功能,在许多情况下您将不得不编写两次代码,而不是简单地添加像 <noscript> 这样简单的东西。这也可能导致大量代码冲突和错误,否则这些错误是不会发生的。最后,用户始终可以编辑他们的代理字符串并完全绕过您的意图,这在互联网上是相当普遍的事件。

也就是说,您想要的代码是:var foo = navigator.userAgent;

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

您有两个可能也有效的备选方案:

  • 编写一个检查 userAgent 的页面,然后将用户转到编码为 jQuery 2 或 1 的页面。
  • 如果可以的话,说服你的老板(或客户等)放弃对 IE8 的支持,如果可能的话。截至发稿时,IE 仅占 15.6% 的市场份额,IE 8 甚至没有进入使用量前 10 的浏览器 based on W3Counter's metrics。这意味着根本不需要切换,您可以节省编码时间。