-1

我有一个在 IE7 中运行的应用程序。但是,我使用的分析应用程序之一刚刚更新,并且需要最低 IE8。是否有一种 javascript/html 方法来欺骗 IE7 中的用户代理以被检测为 IE8?

这是我到目前为止所做的,但它在 IE7 中不起作用

<!DOCTYPE HTML>
<html>
 <head>
  <meta http-equiv="X-UA-Compatible" content="IE=8" />
 </head>
 <body>
  <script type="text/javascript">
    navigator.__defineGetter__('userAgent', function() {
    return 'Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; GTB7.4; InfoPath.2; SV1; .NET CLR 3.3.69573; WOW64; en-US)';
    });
    alert(navigator.userAgent);
  </script>
 </body>
</html>

我只想通过 javascript/html 将 IE7 的用户代理更改为 IE8。我无权访问 Windows 注册表。

有什么帮助吗?谢谢!

4

1 回答 1

3

不,您不能从脚本更改浏览器的 UA 字符串。您可以使用扩展程序或注册表来执行此操作。

但是您的问题的前提是错误的-如果您更改 UA 字符串以“欺骗”应用程序,您可能会避免“您需要升级浏览器”错误消息,而您只会遇到抛出异常的损坏页面或布局不正确,因为它们依赖于 IE7 中不存在的 IE8+ 功能。

IE7 是硬壳的、不安全的,不应该再使用了。

于 2013-08-08T19:29:18.310 回答