Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Jquery检测IE,然后重定向_Javascript_Jquery_Internet Explorer_Redirect_Detect - Fatal编程技术网

Javascript 使用Jquery检测IE,然后重定向

Javascript 使用Jquery检测IE,然后重定向,javascript,jquery,internet-explorer,redirect,detect,Javascript,Jquery,Internet Explorer,Redirect,Detect,我一直在stackoverflow和google上寻找解决方案。所有其他stackoverflow页面似乎都是一堆代码片段,人们在为浏览器/功能检测争论不休 首先: 是的,我知道浏览器嗅探不是最著名的解决方案 不,我现在不在乎。我计划为IE用户提供一个优化的页面(直到IE决定识别我想要使用的所有代码) 我真正需要的是一个简单的.js,它将检测浏览器是否是IE的任何版本,然后将它们重定向到另一个页面 基本上: 如果IE重定向到“IEPage”,则检测IE 我非常感谢你的帮助,非常感谢 var ur

我一直在stackoverflow和google上寻找解决方案。所有其他stackoverflow页面似乎都是一堆代码片段,人们在为浏览器/功能检测争论不休

首先: 是的,我知道浏览器嗅探不是最著名的解决方案 不,我现在不在乎。我计划为IE用户提供一个优化的页面(直到IE决定识别我想要使用的所有代码)

我真正需要的是一个简单的.js,它将检测浏览器是否是IE的任何版本,然后将它们重定向到另一个页面

基本上: 如果IE重定向到“IEPage”,则检测IE

我非常感谢你的帮助,非常感谢

var url = "http://example.com"; 
/msie|trident/i.test(navigator.userAgent) ? document.location = url : null;
编辑

注意,
userAgent
可以在客户端更改

还可以测试
style
对象,或
document.body
CSSStyleDeclaration
,以查找供应商特定的前缀。看


Modernizer有一个更好的方法,如果浏览器没有您需要的功能,您可以重定向。。你会得到所有的ie用户,也许还有一些过时的Firefox,我也有同样的想法……但不知何故,在IE11中,这似乎不再起作用了。我刚刚在IE 11(v11.0.9600.17126)的控制台中测试了它,您的代码返回null…navigator.userAgent显示为“Mozilla/5.0(Windows NT 6.3;WOW64;Trident/7.0;.NET4.0E;.NET4.0C;.NETCLR 3.5.30729;.NETCLR 2.0.50727;.NETCLR 3.0.30729;rv:11.0),就像Gecko”“也许这是出于兼容性的原因,或者只是控制台告诉我(我无法想象……但有时会对IE产生奇怪的影响……)这是出于兼容性的原因。微软做了很多工作来阻止他们的浏览器变得糟糕,然后人们继续阻止IE用户,因为IE曾经很糟糕,所以他们改变了UA,使其不再像旧的IE(这就是为什么这个问题的前提很糟糕)。这在去掉
windows |
(出于明显的原因)后奏效。谢谢
( "msFlex" || "msAnimation" ) in document.body.style ? document.location = url : null;