2011-12-22 16 views
1

私はこのアコーディオンスクリプトで少し問題があります。テンプレートマークアップで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;:クリックハンドラ内ジョシュ

+0

<ul class="menu"> <ul class="noaccordion"> <li> <a href="#">Click Here</a> <ul class="acitem"> 
は、http ://jsfiddle.net/CzZqZ/8/ –

+1

なぜulはulにあり、liにはありませんか? – pixelass

+0

@KevinBはFirefoxとChromeでテストされています。 – Viruzzo

答えて

2

は、に変更します。これは、あなたが投稿した他の例として機能します。

+0

genius !!!!!!お返事ありがとうsoooo much – Joshc

+0

http://jsfiddle.net/CzZqZ/9/ - あなたが投稿している間にテストしていました.-)私にもよく見えます。 –

+0

@ user801773いいえpあなたはそれを受け入れることができると思いますか? – Viruzzo

0

あなたはcollaspse上/拡大したいUL 『要素「あなたに』クラスのnoaccordianを追加

例:。

それも有効なマークアップで動作していないよう
関連する問題