相关疑难解决方法(0)

IE9的IE8仿真和诚实的IE8之间有什么区别?

我遇到了一个问题,其中一些图标没有出现在XP上的IE8中,但是当我在Win 7上运行IE9并且文档和浏览器模式设置为IE8时,问题并不存在.

所以我想知道IE8仿真和真实交易之间的已知差异是什么.让我们听听他们!

internet-explorer internet-explorer-8 ie8-compatibility-mode internet-explorer-9

17
推荐指数
2
解决办法
3656
查看次数

检测IE10兼容模式

我有一些IE 10和其他IE版本的特定代码路径.如果IE10在兼容模式下运行,则浏览器版本设置为7.0.有没有办法检测它是否是IE 10,无论使用JavaScript/JQuery的标准/兼容模式?

html javascript jquery internet-explorer internet-explorer-10

13
推荐指数
4
解决办法
2万
查看次数

确定在兼容模式下呈现页面的原因?

我有一个布局问题,这是由于在IE8上以兼容模式呈现包含页面.有没有办法检测是什么导致IE8进入特定页面的兼容模式?

根据Microsoft的文档,以下条件可能导致页面以兼容模式呈现(http://msdn.microsoft.com/en-us/library/cc288325%28VS.85%29.aspx):

  • 已为页面启用兼容性视图.
  • 该页面加载到Intranet区域,Internet Explorer 8配置为兼容性视图中Intranet区域中的页面.
  • Internet Explorer 8配置为在兼容性视图中显示所有网站.
  • Internet Explorer 8配置为使用兼容性视图列表,该列表指定始终显示在兼容性视图中的一组网站.
  • 开发人员工具用于覆盖网页中指定的设置.
  • 网页遇到页面布局错误,Internet Explorer 8配置为通过在兼容性视图中重新打开页面自动从此类错误中恢复.

在查看了页面之后,我排除了第一种可能性,它必须是页面上的页面布局错误.我想找到这个错误.

ie8-compatibility-mode

7
推荐指数
1
解决办法
2148
查看次数

$ .browser.msie和IE9

我试图通过使用jquery检测所有版本的IE $.browser.msie.它适用于8,7,6,但它忽略了IE9.为什么这是javascript检测ie9的解决方案是什么?

JS版:jQuery JavaScript Library v1.5

javascript jquery internet-explorer

6
推荐指数
1
解决办法
1万
查看次数

代码在IE9中不起作用

可能重复:
IE9数组不支持indexOf

我的代码:

var arrFruits = ['apple', 'banana', 'carrot', 'dates'];
var position = arrFruits.indexOf( 'carrot' );
position > -1 && arrFruits.splice( position, 1 );
alert( arrFruits );
Run Code Online (Sandbox Code Playgroud)

上面的代码显示其结果作为apple, banana, datesChrome.但它不起作用IE9.

javascript

2
推荐指数
1
解决办法
199
查看次数

IE用户代理regexp(inclidung IE11和compat视图)

我需要您的帮助为用户代理字符串创建IE特定的正则表达式.我的目标是获得正确的IE版本(包括IE11),并检查浏览器是否正在运行"Compat View".

所以,例如,我在正常模式下对IE9的期望结果:IE 9.0 和"Compat View"中的IE9:IE 9.0 CV

当不考虑compat视图时,此模式适用于高达IE 10: MSIE ([0-9]{1,}[\.0-9]{0,})

但是,compat视图中的IE9将具有类似的用户代理字符串... MSIE 7.0 ... Trident/5.0.此外,IE11将MSIE在字符串中更长时间使用(参见下面的示例).

我不太了解正则表达式,所以我需要你对模式的帮助.虽然我认为三叉戟图案应该非常明显,/Trident\/\d/.

我将在C#中使用它,所以我想我需要做这样的事情(建议欢迎):

var regex = new Regex(@"MSIE ([0-9]{1,}[\.0-9]{0,})");
var match = regex.Match(Request.UserAgent);
if (match.Success)
    //handle match.Groups
Run Code Online (Sandbox Code Playgroud)

一些可能有用的信息:

IE9的用户代理字符串:

与IE8类似,IE9的兼容性视图将映射到IE7标准模式,而兼容性视图中的IE9的UA字符串将是:

Mozilla/4.0(兼容; MSIE 7.0; Windows NT 6.0; Trident/5.0)在兼容性视图中,IE9通过应用程序版本号(Mozilla/4.0)和版本令牌(MSIE 7.0)将自身报告为IE7.这样做是为了兼容性.从"Trident/4.0"到"Trident/5.0"的递增三叉戟令牌允许网站区分在Compat View中运行的IE9和在Compat View中运行的IE8.

IE11的用户代理字符串:

Windows 7 IE11示例: Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko

类似有用的线程

c# regex internet-explorer user-agent

2
推荐指数
1
解决办法
8047
查看次数