0

IDをホバーすると、divに単純なアニメーションを適用しています。divはidの子ではありません。したがって、カーソルがIDを離れると、divは非表示になります。これは正しいですが、マウスが離れない限り、divを表示したままにする必要があります。

私の問題を確認するためにテストする必要があるかもしれません。リンクは下にあります。

これが私のjQueryです:

            $(function(){
                $('.has-children').hover(function(){
                    var the_handle = $(this).attr('id');
                    var the_sub_nav = '#' + the_handle + '-sub-nav';
                    $(the_sub_nav).stop().animate({height:'200px'},1000);
                },function(){
                    var the_handle = $(this).attr('id');
                    var the_sub_nav = '#' + the_handle + '-sub-nav';
                    $(the_sub_nav).stop().animate({height:'0px'},1000);
                });

           });

この問題へのリンクは次のとおりです。

http://tinyurl.com/c9yunhu

(私はそのHTMLコードに制限されていることに言及する必要があります。私はeコマースプラットフォームを使用しており、それがサブカテゴリを作成できる唯一の方法です)

4

4 に答える 4

2

私があなたを正しく理解していれば; の2番目の関数を削除するだけでhover()、マウスアウトでdivが表示されたままになります。完全なコード:

$(function(){
    $('.has-children').hover(function(){
        var the_handle = $(this).attr('id');
        var the_sub_nav = '#' + the_handle + '-sub-nav';
        $(the_sub_nav).stop().animate({height:'200px'},1000);
    });
});
于 2012-04-19T17:52:30.373 に答える
1

ここにあなたのための簡単なJSFiddlehttp ://jsfiddle.net/toroncino/uPDXX/1/

編集:ここに短いバージョン:http://jsfiddle.net/toroncino/uPDXX/3/

編集2:

今見てください、あなたの現在のhtmlに基づいています...明らかに私はそのようなjsを決して使用しません。=)しかし多分それはあなたを助けるでしょう...

http://jsfiddle.net/toroncino/uPDXX/5/

于 2012-04-19T18:10:12.367 に答える
0

サブメニューコンテナをホバー関数に追加します。これにより、メニュー項目またはサブメニュー全体にカーソルを合わせている間、サブメニューコンテナが開いたままになります。

$('.has-children, #submenu-ID').hover(function(){
于 2012-04-19T17:51:15.960 に答える
0
    $('.has-children').on('hover', function(){
        var the_sub_nav = '#' + this.id + '-sub-nav';
        $(the_sub_nav).stop().animate({height:'200px'},1000);
    });
于 2012-04-19T17:57:11.210 に答える