IE10 中的 JavaScript 浏览器检测

标签 javascript internet-explorer-10

我正在更新我的网站设计,因为它在 IE10 中无法正常工作。

我使用了条件注释和 JavaScript 的组合来处理 IE 版本检测,但由于 IE10 已经放弃了前者,而且我还没有找到忽略后者的原因,所以我在这里寻求帮助。我一直在读这个帖子:

Detect IE version (prior to v9) in JavaScript

但是我对 JavaScript 的了解并不遥远,所以我不确定我是否应该修改我的代码或废弃它并采用和更改该 URL 中提到的代码(如果是这样,我如何应该这样做)。

我当前使用的代码:

<link rel="stylesheet" type="text/css" href="barebones.css">

  <!--[if lte IE 8]>
    <link rel="stylesheet" type="text/css" href="ie.css">
  <![endif]-->

  <!--[if gt IE 8]>
    <link rel="stylesheet" type="text/css" href="default.css">
  <![endif]-->

<script type="text/javascript">
    //<![CDATA[
    var appName = window.navigator.appName;
if (appName !== "Microsoft Internet Explorer")
document.write("<link rel=\"stylesheet\" type=\"text\/css\" href=\"default.css\" \/>");//]]>
</script>

如果有帮助,我可以发布我的网站网址,但我不想让人们认为我正在尝试获得更多网站流量或其他东西。

我知道我当前使用的代码可以稍微改进一下,但我宁愿在进行 Spring 大扫除之前让事情正常工作。

不止一台机器上的 IE10 似乎完全忽略了 JavaScript,我不知道为什么。 IE9 处理得很好。

任何帮助将不胜感激。

最佳答案

处理此类问题时最好避免“浏览器检测”并进行“功能检测”

类似 http://modernizr.com/ 的库将帮助您测试浏览器兼容的特定功能,而不是绕过不同版本的浏览器。

话虽这么说,IE10 往往是一个符合标准的浏览器。您可以访问http://caniuse.com/并查找各种 JavaScript 和 CSS 功能的图表以及所有不同浏览器都支持哪些功能。

您会发现 IE10 遵循大量此类标准。

关于IE10 中的 JavaScript 浏览器检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15602962/

相关文章:

html - 如何强制嵌套在 "display:table"元素中的 "display:table-row"元素填充 MSIE10 中的剩余高度?

css - IE10 不会触发动画(水平移动图片)

asp.net - 在IE 10的DotNetNuke网站上未定义__doPostBack

javascript - 我怎么知道 <video></video> 元素内的视频何时完全加载?

javascript - 防止 Internet Explorer 中的默认击键操作

c# - 无法读取流 (StreamReader .net),使用 Angular (1.5) $http.post 和 json 作为数据从 Internet Explorer 10 发送

javascript - 我正在尝试进行验证但不在 JQuery 中工作

javascript - 使用 jQuery 选择附加的链接按钮

javascript - 在 JavaScript 中构建 IntelliSense/AutoComplete

javascript - AWS S3 - 凭据在代码中公开