【问题标题】:Simple jQuery code won't work in IE9简单的 jQuery 代码在 IE9 中不起作用
【发布时间】:2011-12-01 07:31:57
【问题描述】:

这是我用于隐藏显示标签的一小段代码(如手风琴):

$('#multiOpenAccordion h3').click(function() {
    $(this).next().toggle('slow');
    return false;
});

它只是 jQuery 站点的复制粘贴 - 它适用于所有浏览器(包括 IE7 和 IE8),但不适用于 IE9。

这甚至不是一个 jQuery-UI——只有简单的 jQuery

为什么它在 IE9 中不起作用?如何解决这个问题?

这是我的 HTML:

<div id="multiOpenAccordion">


                        <h3>
                            <a href="#">
                                <h4>
                                    My Car Proj
                                    <span>Free</span>
                                </h4>
                                <p>
                                    site
                                </p>
                            </a>
                        </h3>
                        <div>Lorem ipsum</div>
                        <h3>
                            <a href="#">
                                <h4>
                                    My Car Probsp;
                                    <span>Free</span>
                                </h4>
                                <p>
                                    bla bla
                                </p>
                            </a>
                        </h3>
                        <div>Lorem ipsum</div>
</div>

【问题讨论】:

  • 你用的是什么版本的jQuery?
  • 如果fadeToggle() 工作,你也可以试试吗?
  • 问题可能是我在标题中使用了

    - 我正在尝试在没有

    的情况下重建它,它似乎已经解决了问题

标签: javascript jquery jquery-ui internet-explorer-9


【解决方案1】:

如果你的下一个指向 html 中的 href,请尝试给出这些

"href=javascript:void(0)"

然后删除你的 return false

【讨论】:

    【解决方案2】:

    由于某些未知原因,从标头中删除 &lt;p&gt; 元素解决了问题(仅在 IE9 中出现)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多