我可以使用下面的代码检测以前版本的Internet Explorer。但是,在IE 11中,用户代理字符串不再包含“MSIE”字。有没有办法使用相同的方法检测IE 11?
<cfif #CGI.HTTP_USER_AGENT# CONTAINS "MSIE">
//do something
<cfelse>
//do another thing
</cfif>
这就是我要检测IE 11的方法,但不起作用。
<cfif #CGI.HTTP_USER_AGENT# CONTAINS "MSIE" OR REMatch(#CGI.HTTP_USER_AGENT#, "Trident/7.*rv:11")>
</cfif>
答案 0 :(得分:1)
rematch
接受两个论点。第一个是正则表达式,第二个是您正在测试的字符串。你的论点不合时宜。
REMatch("Trident/7.*rv:11", CGI.HTTP_USER_AGENT)
REMatch返回一个数组,因此你想要测试数组的长度。
arrayLen(REMatch("Trident/7.*rv:11", CGI.HTTP_USER_AGENT)) neq 0
你为什么要这样做?
IE11是一款现代浏览器,您通常使用网站或网络应用程序执行的大多数操作都可以在IE11中与其他任何浏览器一样使用。
答案 1 :(得分:0)
这里有一个关于IE11的新浏览器字符串的解释:
这将帮助您决定将哪些内容放入表达式以检测IE11。