Javascript 带有模板标记的jQuery一致性问题

Javascript 带有模板标记的jQuery一致性问题,javascript,jquery,jquery-ui-accordion,Javascript,Jquery,Jquery Ui Accordion,我对这个手风琴剧本有点意见 我知道为什么会这样,但我无法解决。我不确定是否有可能修复它 我使用的手风琴脚本是这样的,它很容易实现 这种手风琴的标记既简单又有语义 <ul class="menu"> <li> <a href="#">Link</a> <ul class="acitem"> <li><a href="http://www.pivotx.ne

我对这个手风琴剧本有点意见

我知道为什么会这样,但我无法解决。我不确定是否有可能修复它

我使用的手风琴脚本是这样的,它很容易实现

这种手风琴的标记既简单又有语义

<ul class="menu">

    <li>
        <a href="#">Link</a>
        <ul class="acitem">
            <li><a href="http://www.pivotx.net/">PivotX</a></li>
            <li><a href="http://www.wordpress.org/">WordPress</a></li>
            <li><a href="#four">four</a></li>
            <li><a href="http://www.textpattern.com/">Textpattern</a></li>
            <li><a href="http://typosphere.org/">Typo</a></li>
        </ul>
    </li>

    <li>
        <a href="#">Weblog Tools</a>
        <ul class="acitem">
            <li><a href="http://www.pivotx.net/">PivotX</a></li>
            <li><a href="http://www.wordpress.org/">WordPress</a></li>
            <li><a href="#four">four</a></li>
            <li><a href="http://www.textpattern.com/">Textpattern</a></li>
            <li><a href="http://typosphere.org/">Typo</a></li>
        </ul>
    </li>

    <!-- and so fourth -->

</ul>
这是脚本设计用于处理的标记样式。它是有效的,看这里

但我的问题是,我使用的模板无法更改标记,请参见下面的输出标记

<ul class="menu">

    <ul>
        <li>
            <a href="#">Link</a>
            <ul class="acitem">
                    <li><a href="http://www.pivotx.net/">PivotX</a></li>
                    <li><a href="http://www.wordpress.org/">WordPress</a></li>
                    <li><a href="#four">four</a></li>
                    <li><a href="http://www.textpattern.com/">Textpattern</a></li>
                    <li><a href="http://typosphere.org/">Typo</a></li>
            </ul>
        </li>
    </ul>

    <ul>
        <li>
            <a href="#">Weblog Tools</a>
            <ul class="acitem">
                    <li><a href="http://www.pivotx.net/">PivotX</a></li>
                    <li><a href="http://www.wordpress.org/">WordPress</a></li>
                    <li><a href="#four">four</a></li>
                    <li><a href="http://www.textpattern.com/">Textpattern</a></li>
                    <li><a href="http://typosphere.org/">Typo</a></li>
            </ul>
        </li>
    </ul>

</ul>
这是输出的标记,这是愚蠢的

它的输出超过了它所需要的

我已经为上面的标记创建了一个js提琴,这样您就可以看到发生了什么

当一个新的打开时,它不会关闭其他的

有人知道如何修复脚本,使其像第一个JSFIDLE一样工作,但使用上面疯狂的标记吗

如果有人能帮忙,非常感谢


Josh

在单击处理程序中,更改为:
var parent=this.parentNode.parentNode.parentNode。这与您发布的另一个示例相同。

在单击处理程序中,更改为:
var parent=this.parentNode.parentNode.parentNode。这与您发布的另一个示例相同。

将类“noaccordian”添加到您要展开/折叠的“ul”元素中

例如:

<ul class="menu">
    <ul class="noaccordion">
        <li>
            <a href="#">Click Here</a>
            <ul class="acitem">
将类“noaccordian”添加到要展开/折叠的“ul”元素中

例如:

<ul class="menu">
    <ul class="noaccordion">
        <li>
            <a href="#">Click Here</a>
            <ul class="acitem">

即使使用有效的标记,它似乎也不起作用,为什么ul在ul中而不是在li中???@KevinB对我来说很好,在Firefox和Chrome中测试。即使使用有效的标记,它似乎也不起作用,为什么ul在ul中而不是在li中???@KevinB对我来说很好,在Firefox和Chrome中测试。-在您发布时正在测试。;-)对我来说也不错。抱歉,我不得不等7分钟,因为它很快就得到了答复-我分心了!谢谢-您在发布时正在测试。;-)对我来说也不错。抱歉,我不得不等7分钟,因为它很快就得到了答复-我分心了!谢谢