我想使用 USER_AGENT 像以前的版本一样运行我的网站。原因是我想检测我网站中的那些旧浏览器并向它们显示警告消息。
目前我正在通过在Firefox中使用“Modify_headers”来做到这一点。
是否有任何地方列出了用于 Internet Explorer/firefox 的所有或至少常见的 user_agents 列表?(基本上我需要的是 IE 8.1,因为这个给我带来了问题)
如果没有任何列表,至少我需要 Internet Explorer 8.1 用户代理。
提前致谢
我想使用 USER_AGENT 像以前的版本一样运行我的网站。原因是我想检测我网站中的那些旧浏览器并向它们显示警告消息。
目前我正在通过在Firefox中使用“Modify_headers”来做到这一点。
是否有任何地方列出了用于 Internet Explorer/firefox 的所有或至少常见的 user_agents 列表?(基本上我需要的是 IE 8.1,因为这个给我带来了问题)
如果没有任何列表,至少我需要 Internet Explorer 8.1 用户代理。
提前致谢
首先你真的不想做浏览器检测,先做特征检测。
有了这个,我认为你的意思是 Windows 8.1 上的 IE 11,它试图伪装自己,使人们更难浏览器检测并因此回退到 IE7 版本,从而通过禁用 IE 必须提供的所有新功能来伤害用户。
我对过时浏览器的策略是为他们提供一个没有 JavaScript 的普通页面,只需要一些基本的 CSS 来格式化布局。无需为他们竭尽全力,他们无法处理甚至在 2007-09 年还没有创建的新东西。它节省了您的开发时间,但为他们提供了至少可以阅读和进行基本交互的东西。所以我在服务器上这样做。它仍然是相同的内容,只是没有那么性感或互动。如果您使用任何语义标签,您可能仍希望包含 HTML5 shiv,以便您可以设置它们的样式。
除此之外,对于 IE10/11,您绝对不应该对 Chrome 做任何不同的事情,请使用无前缀 CSS ;) 如果它在 Chrome 中工作,它可能会在 IE 中工作,除非你让它不起作用。
我不知道如何为每个浏览器设置标题,但我们也可以使用 Java Script 检测浏览器类型及其版本。
window.navigator
完整代码是:
<script>
txt = "<p>Browser CodeName: " + navigator.appCodeName + "</p>";
txt+= "<p>Browser Name: " + navigator.appName + "</p>";
txt+= "<p>Browser Version: " + navigator.appVersion + "</p>";
txt+= "<p>Cookies Enabled: " + navigator.cookieEnabled + "</p>";
txt+= "<p>Platform: " + navigator.platform + "</p>";
txt+= "<p>User-agent header: " + navigator.userAgent + "</p>";
txt+= "<p>User-agent language: " + navigator.systemLanguage + "</p>";
document.getElementById("example").innerHTML=txt;
</script>