0

私が本質的に何を求めているかを示すチュートリアルを持っている人を見つけましたが、デモは、サブメニューをメニュー項目の上にスライドさせるのではなく、下にスライドするサブメニュー用です。

チュートリアルへのリンクは次のとおりです。

http://www.darkscarab.com/blog/read.php?id=14

使用するjQueryスクリプトは次のとおりです。

$(document).ready(function(){
    $(".submenu").slideUp(100, function(){$(".menu_item").css({overflow:'visible'})});
    $(".menu_item").hover(
        function(){
            if($(".submenu", this).queue().length < 2)
                $(".submenu", this).slideDown(500);
        },function(){
            $(".submenu", this).slideUp(500);
        }
    );
});

slideUpをslideDownに切り替えたり、その逆を行ったりすると、スライドアップは十分に機能します(切り替えなくても機能します)。ただし、終了時に発生するはずのスライドダウンは実際には機能しません。 。これは、サブメニューが消えて、次にホバーしたときに下向きの軌道を終了するようなものです。

基本的に、それはすべてしゃっくりであり、非常に信頼性がありません。

誰かがこの初心者のための素晴らしいアイデアを持っていますか?

どうもありがとう!

4

2 に答える 2

1

.slideDownは、で始まりheight:0、その後、heightプロパティを完全な値にアニメーション化する要素を示しています。 .slideUp高さを完全な値から0までアニメートしてから、要素を非表示にします。必要なアニメーションを作成するには、非表示にする代わりにslideUpを表示する必要があるため、アニメーションを切り替えることはできません。その逆も同様です。

説明するものを作成する場合は、相対的に配置された要素内に要素を絶対に配置してbottom:0、高さプロパティをアニメーション化したときに下から成長するようにします。次に、最初に、次に。になるfunction mySlideUp()ように作成します。私がしたいので。.show()display:none; height:0.animate({height:'auto'},'slow')function mySlideDown().animate({height:0},'slow')hide()

それがお役に立てば幸いです。あなたは初心者であり、自分で書き出すことは有益であるため、pseudo-jQueryで記述します。幸運を!

于 2010-05-20T23:03:32.540 に答える
0

私が達成しようとしていたようなナビゲーションメニューを探している人には、次のサイトが役立つかもしれません。

http://www.mrbandfriends.co.uk/

しかし、mhrのアドバイスを使用し、B氏がナビゲーションをどのようにコーディングしたかを調べたところ、パンくずリストを使用して、実行可能なスクロールアップナビゲーションを取得することができました。

ありがとうございました!

于 2010-05-23T20:59:48.597 に答える