私はこのアコーディオンスクリプトで少し問題があります。テンプレートマークアップでjQueryアコーディオンの問題
私はなぜそれが起こっているのか知っていますが、私はそれを修正することはできません。それを修正することが可能かどうかわからないのですか?
私が使用しているアコーディオンのスクリプトはこれであり、実装が非常に簡単です。 http://www.i-marco.nl/weblog/jquery-accordion-menu/
このアコーディオンのマークアップはシンプルで意味があります。
<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>
これは、スクリプトが動作するように設計されている場合のマークアップのスタイルです。それは動作します、ここを参照してください... http://jsfiddle.net/motocomdigital/CzZqZ/1/
私の問題は、マークアップを変更できないテンプレートを使用しているためです。下記の出力マークアップを参照してください。
<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>
これは出力されたばかげて馬鹿です。
それ以上の出力は必要です。
あなたは
は誰がどのように知ってい http://jsfiddle.net/motocomdigital/CzZqZ/2/新しいものを開いているとき、それは他人を閉じていない...何が起こっているのかを見ることができるように私は上記のマークアップのためのjsフィドルを作成しました最初のjsfiddleのように動作するようにスクリプトを修正しますが、上のクレイジーマークアップを使用しますか?
ありがとうございました。 var parent = this.parentNode.parentNode.parentNode;
:クリックハンドラ内ジョシュ
なぜulはulにあり、liにはありませんか? – pixelass
@KevinBはFirefoxとChromeでテストされています。 – Viruzzo