Javascript 阻止IE用户加载网页 我是一个C++开发人员,试图交付他的第一个PHP/HTML5/CSS3项目。我不熟悉浏览器兼容性问题(特别是IE),我在linux box上做CSS工作。现在项目已经完成并准备交付,但发现并没有CSS代码在IE上工作
通过谷歌搜索,我发现了IE7.js、CSS3 Pie和其他java脚本技巧,但没有人能够成功地解决所有问题。因此,我试图找到一种方法来防止用户加载旧IE版本的内容 此脚本(或条件注释)应将用户重定向到自定义页面,指示他们必须下载并安装IE 10或更高版本,或现代浏览器 我尝试将此代码放在第页的末尾:Javascript 阻止IE用户加载网页 我是一个C++开发人员,试图交付他的第一个PHP/HTML5/CSS3项目。我不熟悉浏览器兼容性问题(特别是IE),我在linux box上做CSS工作。现在项目已经完成并准备交付,但发现并没有CSS代码在IE上工作,javascript,php,css,internet-explorer,Javascript,Php,Css,Internet Explorer,通过谷歌搜索,我发现了IE7.js、CSS3 Pie和其他java脚本技巧,但没有人能够成功地解决所有问题。因此,我试图找到一种方法来防止用户加载旧IE版本的内容 此脚本(或条件注释)应将用户重定向到自定义页面,指示他们必须下载并安装IE 10或更高版本,或现代浏览器 我尝试将此代码放在第页的末尾: <!--[if IE]> <?php header( 'Location: http://www.foo-bar.com/please-use-a-browser.html'
<!--[if IE]>
<?php
header( 'Location: http://www.foo-bar.com/please-use-a-browser.html' ) ;
?>
<![endif]-->
但没有重定向
欢迎任何其他建议。您放在页面末尾的代码不起作用,因为它是在客户端计算的,PHP是服务器端语言。因此,当客户端确定用户是否在使用IE时,什么也不会发生,因为PHP没有输出任何浏览器可以阅读和理解的运行时“指令” 更换
标题('位置:http://www.foo-bar.com/please-use-a-browser.html' ) ;代码>带有:
<script>
window.location.replace("http://stackoverflow.com");
</script>
如果你真的想确定,关于检测IE,你放在页面末尾的代码不会起作用,因为它是在客户端计算的,PHP是一种服务器端语言。因此,当客户端确定用户是否在使用IE时,什么也不会发生,因为PHP没有输出任何浏览器可以阅读和理解的运行时“指令”
更换标题('位置:http://www.foo-bar.com/please-use-a-browser.html' ) ;代码>带有:
<script>
window.location.replace("http://stackoverflow.com");
</script>
如果您确实想确定,关于检测IE,您还可以使用:
<?php
if (isset($_SERVER['HTTP_USER_AGENT']) && (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false)){
header('Location: http://www.foo-bar.com/please-use-a-browser.html');
exit(0);
}
您还可以使用:
<?php
if (isset($_SERVER['HTTP_USER_AGENT']) && (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false)){
header('Location: http://www.foo-bar.com/please-use-a-browser.html');
exit(0);
}
当然,我希望所有用户都能看到闪亮的css设计,但我不能一开始就对css/js进行破解。我将禁用IE并强制所有人使用firefox+chrome+safari,解决问题后,我将删除重定向脚本。当然,我希望所有用户都能看到闪亮的css设计,但我首先不能做css/js黑客。我将禁用IE并强制所有人使用firefox+chrome+safari,解决问题后,我将删除重定向脚本。用户不理解“浏览器”是什么,也不会因为无法访问您的网站而责怪它,也不会升级(即使他们知道如何升级,也可能无法升级)。他们只会将业务转移到别处。就他们而言,互联网的每一个其他部分对他们来说都很好,而程序员(你)才是罪魁祸首。@cimmann当然。但我宁愿在修复IE问题之前失去一些用户,也不愿让用户失望(当他们看到网站设计中的灾难时,他们怎么能信任我们?)。用户不理解“浏览器”是什么,也不会因为无法访问您的网站而责备它,也不会升级(即使他们知道如何升级,他们也可能无法升级)。他们只会将业务转移到别处。就他们而言,互联网的每一个其他部分对他们来说都很好,而程序员(你)才是罪魁祸首。@cimmann当然。但我宁愿在解决IE问题之前失去一些用户,也不愿让用户失望(当他们看到网站设计中的灾难时,他们怎么能信任我们?)。