IE 8中的JQuery手风琴错误?解决方法?

时间:2010-06-22 00:15:19

标签: jquery animation accordion internet-explorer-8

要查看此手风琴动画错误,请使用Internet Explorer 8(IE8)转至http://hopplayground.com/

点击“Bios”。首次单击菜单项应打开子菜单。但事实并非如此。第二次单击关闭菜单,但留下了伪影。使用其他菜单可以正常工作。

问题:是什么导致了这个故障,有没有办法解决它或解决它?

我正在使用jQuery 1.4.2和jQuery UI 1.8.2。该功能在Firefox和Safari中完美运行。

TTFN 特拉维斯

5 个答案:

答案 0 :(得分:8)

不确定问题是什么,因此如果解决方法不是解决方案,则该页面适用于IE7,因此您可以将以下元标记添加到文档<head>中:

  <meta http-equiv="X-UA-Compatible" content="IE=7" />

这将迫使IE8进入IE7兼容模式。使用此标记可以减少跨浏览器问题。

答案 1 :(得分:4)

以为我会把我的两分钱扔进去。根据mVChr的回答,你可以使用:

<meta http-equiv="X-UA-Compatible" content="IE=Edge" />

通过将其设置为edge,它会强制IE使用可用的最新渲染引擎。我有同样的问题,这对我来说是一个修复。

如果您正在寻找更多信息,这家伙网站会更多地讨论它:

http://farukat.es/journal/2009/05/245-ie8-and-the-x-ua-compatible-situation

答案 2 :(得分:1)

您可以为手风琴添加样式,例如: .accordion {display:table} 因为ie有一些问题显示:内联jquery使用...

答案 3 :(得分:1)

根据RikawaS的回应......

在您的手风琴标题上,放置以下css代码:

.accordionHeader { 显示:表; 宽度:100%; }

如果您发现标题在它们之间悬停时仍然会跳转,请使用纯色而不是使用边距和填充的边框顶部。当然,这仅适用于纯色的设计(边框颜色需要与背景颜色相匹配)。下面是一个例子:

.accordionHeader { border-top:10px solid #FFFFFF; }

这将修复IE8!这花了我一年的时间来搞清楚。

答案 4 :(得分:0)

我从另一篇文章中得到了这个:

以下是指向它的链接:Why won't jQuery accordion section activate in IE 8?

我遇到了同样的问题。 IE非常挑剔正确的html,并确保在你的手风琴里面,

结构之外什么都没有,例如,你有这个:

<h3>a header</h3>
<div>some content</div>
<h3>another header</h3>
<div>some more content</div>

它会起作用,但这不会:

<h3>a header</h3>
<div>some content</div>
<span>extra stuff</span>
<h3>another header</h3>
<div>some more content</div>

这都将在你调用.accordion()的任何元素内。

相关问题