0

私はjoomlaとJqueryを初めて使用します。これを念頭に置いてください。

うまく機能していないjavascriptアコーディオンメニューがあります。最後の子要素をクリックすると、すべてのノードが展開されて表示されます。子のノード(父)だけがクリックしたわけではありません。

次のようなテンプレートのindex.phpがあります。

function initMenu() {
        $('.menu ul').hide();
        $('.menu li.active.parent ul').show();
        $('.menu li a').click(
        function() {
        $(this).next().slideToggle('normal');
        }
        );
        }
    $(document).ready(function() {initMenu();});

[編集した画像を投稿して行動を示すことができないため(評判がないため)、コンセプトメニューで状況を説明します]

示されている動作:

Node1
||||| Node1.1
||||| Node1.2 ||||||||||||
Node1.2.1
|||||||||||||||||| |||ノード1.2.1.1 <-----ここをクリックすると、以下のすべてのノードが展開されます。
||||| Node1.3
Node2
||||| Node2.1
|||||||||||| Node2.1.1
|||||||||||| Node2.1.2
||| ||||||||| Node2.1.3 |||||||||||||||||||||
Node2.1.3.1
|||||||||||| |||||||||
Node2.1.3.2 ||||||||||||||||||||| Node2.1.3.3
Node3

正しい動作:

Node1
||||| Node1.1
||||| Node1.2 ||||||||||||
Node1.2.1
|||||||||||||||||| |||ノード1.2.1.1 <-----ここをクリックしても子は表示されません
|||||ノード1.3
ノード2ノード
3

これに関するどんな助けも高く評価されるでしょう。よろしく。

4

1 に答える 1

0

最初にいくつかのhtmlコードを教えてください。ノード1.2.1.1は残りのノードを1つのエンティティとして処理すると思いますが、すべてのノードが正しくないと思います

第二に、Joomla by core には mootools フレームワークが含まれています。競合がある可能性があります。コードを次のようにラップしてみてください。

$.noConflict();
  jQuery(document).ready(function($) {
    // Code that uses jQuery's $ can follow here.
  });

最後になりましたが、JqueryUI のアコーディオン プラグインを使用してみてください。

于 2012-05-26T20:05:36.230 に答える