0

スーパーフィッシュメニューがあり、遅延は800に設定されていますが、あるドロップダウンから別のドロップダウンに移動すると、前のドロップダウンと新しいドロップダウンが同時に表示されます。800msの遅延が終了するまで、前のドロップダウンは消えます。遅延を変更したくありませんが、新しいドロップダウンを開いた場合、以前に開いたドロップダウンを遅滞なくすぐに閉じたいと思います。これが理にかなっていることを願っています。

それを行う方法はありますか?

ありがとう!!

クリックして表示

4

1 に答える 1

1

そのウェブサイトでは、遅延は800に設定されており、正常に機能していると思います。古いポップアップは表示されません。コードに他の変更を加えましたか?

http://users.tpg.com.au/j_birch/plugins/superfish/#examples

編集:複数のULメニュー構造を単一のULに変更したくない場合は、ここに解決策があります。各ULに一意のIDを指定してから、superfish.jsのover = function()を次のように変更します。

over = function(){
    var $$ = $(this), menu = getMenu($$);
    $('.sf-menu').each(function(){
        if ($(this).attr('id') != $(menu).attr('id')) {
            $(this).hideSuperfishUl();
        }                       
    });
    clearTimeout(menu.sfTimer);
    $$.showSuperfishUl().siblings().hideSuperfishUl();
},

これは他のいくつかの副作用を引き起こす可能性がありますが、私は今のところ何も見ていません。

于 2010-03-09T14:42:22.940 に答える