4

根据用户浏览器运行不同的 javascript 有多容易?

例如,如果有人使用 IE9 访问该站点,我希望它运行与 Chrome 用户正常运行的脚本不同的脚本。

4

4 回答 4

4

您可以为此使用条件注释

<!--[if lte IE 6]>
    <script>alert('lte stands for less than or equal to')</script>
<![endif]-->

<!--[if lt IE 7]>
    <script>alert('lt stands for less than')</script>
<![endif]-->

<!--[if gte IE 9]>
    <script>alert('gte stands for greater than or equal to')</script>
<![endif]-->

等等

于 2011-01-05T15:42:53.920 回答
1

有各种浏览器检测技术。您可以尝试检测浏览器(通过检查navigator.userAgent属性自行检测),或者您可以使用几乎所有 Javascript 框架中可用的方法。例如:

  1. jQuery.browser
  2. 使用 Prototype JS 检测浏览器

或者,您可以使用条件注释,但它们只能被 IE 识别。

——帕维尔

于 2011-01-05T15:45:52.483 回答
0

您可以在 HTML 中使用条件注释。

<!--[if IE]>
   <script src="ie_only.js"></script>
<![endif]-->

这也可以用于外部样式表

有关此帖子的更多信息http://css-tricks.com/how-to-create-an-ie-only-stylesheet/

于 2011-01-05T15:43:07.337 回答
0

我可以推荐特征检测吗?

if (someIEAPI) {
    // ie code
} else if (someChromeAPI) {
    // chrome code
}

这段代码更健壮,如果 firefox 或 opera 支持其中一种 API,您无论如何都不必检查他们的浏览器。

此外,浏览器习惯于对你撒谎并假装是时髦的东西。

于 2011-01-05T15:50:01.640 回答