我在我的网站上使用ruby on rails 3并且差不多完成了,该网站即将上线(星期一),但我遇到了IE7兼容性方面的问题,所以作为临时措施,我希望有用户重定向到“404”esque页面,如果他们使用IE7,它将只有一些基本信息说明现在尝试另一个浏览器,直到问题得到解决
我如何在rails 3中进行此操作?过去有人做过这样的事吗?我不想进入应该我/不应该支持IE7,我要去,只需要花费比我想象的更长的时间
对此赞赏的任何帮助
答案 0 :(得分:13)
你可以做一个重定向的脚本:
<!--[if IE 7]>
<script type="text/javascript">
window.location = "http://www.google.com/";
</script>
<![endif]-->
或者是html:
<!--[if IE 7]>
<meta http-equiv="REFRESH" content="0;url=http://www.google.com/">
<![endif]-->
或者只是留言说这个网站不支持
答案 1 :(得分:2)
如果您能够使用jQuery,您可以进行简单的浏览器版本测试,然后重定向到相应的页面并设置cookie:
//IE 7 browser detection
if ($.browser.msie) {
var version = $.browser.version;
if (version == '7.0') {
var cookie = $.cookie('IE7');
if (cookie != 'set') {
$.cookie('IE7', 'set');
window.location = '404-url-string';
}
window.location = '404-url-string';
}
}
您还需要引入jquery cookie插件来设置cookie。 '404-url-string'将是您指向的页面的路径名。
答案 2 :(得分:1)
作为一种临时措施,IE有条件使用Javascript重定向吗?
<!--[if IE 7]>
<script type="text/javascript">
window.location = "/upgrade_browser.html";
</script>
<![endif]-->
来源:Javascript redirect for Internet Explorer browser version user agent?
答案 3 :(得分:1)
一点点javascript应该处理这个。
这是JavaScript navigator
对象的一个小演示:
<script type="text/javascript">
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>";
document.getElementById("example").innerHTML=txt;
</script>
请注意,这实际上是直接从W3Schools(我通常不推荐,但对于这个问题,它没关系)
无论如何,你会想要这样的东西:
<script type="text/javascript">
if(navigator.appName=="Internet Explorer" && navigator.appVersion == "7.0.Whatever") //maybe its "IE", I didn't actually check. Sorry lol, don't have time to test this out
{
window.location.href = "YourErrorPageFileName";
}
</script>
将该代码丢入您的登录页面(或母版页,无论如何),您应该好好去。
旁注:不知道为什么代码格式化这样的哑巴。猜猜StackOverflow在某些条件下奇怪地解析斜杠