我们刚刚开始开发一个Web应用程序,我们想要阻止Internet Explorer 8及其下载。实现这一目标的最佳方法是什么?
我找到了阻止IE6的方法,但教程(http://css-tricks.com/ie-6-blocker-script/)是从2008年开始的,我觉得它有点过时了。我们还想阻止IE 7和8 ......
该站点使用很多Backbone.js在CodeIgniter中构建。
如果有人有任何想法,他们将不胜感激。
谢谢!
更新
对不起家伙,更多信息:是的我想要阻止他们,我想显示一条消息,并能够设置页面样式说“抱歉,您使用的是不是网络浏览器的Internet Explorer,请在这里下载CHROME ”
答案 0 :(得分:9)
使用CSS和条件评论来做。
<head>
<!--[if IE lte 8]>
<link rel="stylehseet" type="text/css" href="blockIE.css" />
<[endif]-->
</head>
<body>
<div class="yourcontent">
...
</div>
<div class="notification">
<h1>Sorry, we don't support your old browsers</h1>
</div>
</body>
CSS:
body * { display: none }
.notification { display: block; }
答案 1 :(得分:8)
您也可以使用CodeIgniter, https://www.codeigniter.com/user_guide/libraries/user_agent.html
类似的东西:
$this->load->library('user_agent');
if ($this->agent->browser() == 'Internet Explorer' && $this->agent->version() <= 8){
//Redirect or show error
}
答案 2 :(得分:2)
这将检查IE 8浏览器和更低版本。它用于&lt;头&gt;
<!--[if lte IE 8]>
<meta http-equiv="refresh" content="0; url=http://www.google.com" />
<script type="text/javascript">
window.top.location = 'http://www.google.com';
</script>
<![endif]-->
答案 3 :(得分:0)
你可以使用jQuery:
//if its internet explorer...
if(jQuery.browser.msie){
//getting the version
if($.browser.version < 8){
//do whatever
}
}
<强>更新强>
正如评论所指出的,不建议使用此功能。你应该看看这个: How to detect IE7 and IE8 using jQuery.support
更新2
您也可以使用PHP pointed here.
来完成此操作答案 4 :(得分:0)
<!--[if lt IE 9]>
<!-- Some div saying sorry or calling js function or whatever -->
<![endif]-->
<!--[if lte IE 8]>
<!-- Some div saying sorry or calling js function or whatever -->
<![endif]-->
答案 5 :(得分:0)
您可以使用htaccess来阻止MSIE
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_USER_AGENT} MSIE
RewriteCond %{REQUEST_FILENAME} !ban_ie.php
RewriteRule .* /ban_ie.php [L]
RewriteCond %{HTTP_USER_AGENT} MSIE
RewriteCond %{REQUEST_FILENAME} !ban_ie.php
RewriteRule .* /ban_ie.php [L]
</IfModule>
或者你可以使用php脚本
<?php
ob_start();
?>
<html>
<head>
<style type="text/css">
* {
margin:0;
padding:0;
height:100%;
}
#mydiv {
position:absolute;
width:400px;
height:90px;
text-align:center;
top:50%;
left:50%;
margin-top:-40px;
margin-left:-200px;
border:solid 2px red;
padding-top:30px;
background:#ffff00;
font-weight:bold;
}
</style>
</head>
<body>
<div id="mydiv">
<?php
$browser = $_SERVER['HTTP_USER_AGENT'];
if(strstr($browser, "MSIE"))
{
echo"BG: Свалете си Mozilla Firefox за да влезнете в сайта EN: Download Mozilla Firefox to enter website <br /> <b><a href='http://www.mozilla.com/en-US/firefox/'>Mozilla Firefox</a></b>";
}
elseif (strstr($browser, "Opera"))
{
echo"Свалете си мозилла <br /> <b><a href='http://www.mozilla.com/en-US/firefox/'>Mozilla Firefox</a></b>";
}
else {
header("Location: http://muonline-bg.eu/");
}
?>
</div>
</body>
</html>
答案 6 :(得分:0)
我认为避免与页面代码其他部分冲突的最快,最安全的方法是...
var games = await db.CategoryMain
.Include(x => x.Game)
.Where(x => x.Id == categoryId)
.Select(x => x.Game)
.ToListAsync();