IE9自动在某个页面上输入兼容性视图

时间:2011-09-21 19:51:59

标签: internet-explorer internet-explorer-9 compatibility-mode

我目前正在管理一个我没有开发过的电子商务网站。开发人员选择这样做,以便当您查看项目时,单击“添加到购物车”按钮使用jQuery的“post”方法通过Ajax将项目的ID和指定的数量发布到“/ items / ajax_add_to_cart”。 / p>

我从该网站的所有者那里得到一份报告,称有两三个客户表示他们正在向购物车添加商品,但他们的购物车似乎是空的。我调查并在Apache访问日志中找到以下条目(IP地址和URL已更改):

127.0.0.1 - - [19/Sep/2011:12:49:50 -0400] "GET /items/view/1234 HTTP/1.1" 200 12117 "http://www.example.com/items/search/[keyword]" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; WOW64; Trident/5.0)"

127.0.0.1 - - [19/Sep/2011:12:50:15 -0400] "POST /items/ajax_add_to_cart HTTP/1.1" 200 15 "http://www.example.com/items/view/1234" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; WOW64; Trident/5.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; OfficeLiveConnector.1.5; OfficeLivePatch.1.3; .NET4.0C; BRI/1)"

127.0.0.1 - - [19/Sep/2011:12:50:16 -0400] "GET /items/view_cart HTTP/1.1" 200 10305 "http://www.example.com/items/view/1234" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; WOW64; Trident/5.0)"

请注意,当访问“/ items / ajax_add_to_cart”页面时,用户代理字符串意味着Internet Explorer 9自动进入兼容性视图。这就解释了为什么购物车最终是空的。但是,我根本无法复制这一点。

有关为何发生这种情况的任何想法?我可能会添加<meta http-equiv="X-UA-Compatible" content="IE=Edge"/>标签来修复它,但我希望能够首先重现问题,只是为了绝对确定发生了什么。

1 个答案:

答案 0 :(得分:4)

我最近被要求拯救IE9自动进入兼容性视图的两个站点。在这两个实例中,问题都是单行CSS。几乎令人难以置信。两种情况下的CSS都是正确的语法。第一个是字体声明,第二个是字体系列声明。两者都包含字体堆栈。删除行修复了问题。所以,这可能不是你想要的答案,但我会说检查CSS!