0

リンクをクリックすると、メニューの表示がスライドトグルされる JQ のメニューを作成しようとしています。メニュー内には、ページへの直接リンクがあり、別のメニューを表示するリンクを展開します。私はこれまでのところこれを機能させています:

http://www.eadata.co.uk/testing/test.html#

私が今やりたいことは、上部のリンクをクリックして、それが元に戻ったときに、展開されたすべてのメニューを閉じる必要があることです。現在部分的に機能しており、トグルするとトップのサブメニューが非表示になります。そのため、元に戻すと、メニューはすべて閉じられます。

私はこれを解決しようとしていますが、まだJQを学んでいます。PHPは私のものです!:)

また、このメニューでは、マウスがメニュー領域を離れた場合、設定時間後に元に戻すことは可能ですか?

4

1 に答える 1

1

最初にこれを試してください(バージョンONE):

すべての nav-level-2 に ID ではなくクラスを指定します (CSS を忘れないでください)。

$(".nav-level-2").slideUp('slow');

これで問題が解決しない場合は、次を使用してください。

jQuery で使用$('#nav-container').find('.nav-level-2')して、このクラスのすべての要素を取得できます。これで、これを使用できます:

for(var i = 0; i < $('#nav-container').find('.nav-level-2').length; i++) {
    $('#nav-container').find('.nav-level-2').eq(i).slideUp('slow');
}

これで問題が解決しない場合は、次を使用してください。

すべての nav-level-2 の一意の ID を指定し、それらをすべて配列に格納し、for ループを使用してすべてのレベルを閉じます。それらが閉じている場合、それらはアニメーション化されません:

var levelarray = new Array('nav-level-2-a', 'nav-level-2-b', 'nav-level-2-c');
for(var i = 0; i < levelarray.length; i++) {
    $('#' + levelarray[i]).slideUp('slow');
}
于 2012-04-19T15:19:32.797 に答える