1

リンクにスライドアップ効果のあるナビゲーションがあります。これをクリックすると、ページが下から上にスライドし、#portfolio というメインページが下にスライドし、ユーザーが同じリンクをもう一度クリックすると、ページが開きます。滑り落ちる。

私が達成しようとしているのは、#aboutpage と #contactpage の 2 つのパネルのいずれかが開いているときに、もう一方のパネルをクリックした場合です。たとえば、#aboutpage が開いているときに #contactpage のリンクをクリックすると、 #contactpage が上にスライドすると、about ページが下にスライドします。さまざまな方法で何十回も試しましたが、うまくいかないようです。

http://maximsiebert.com/unamed/Untitled-1.html

    $('.about').click(function() {
    if (!$('#aboutpage').is(":visible")) {
    $('#aboutpage') .slideToggle(1000)
    $('#portfolio') .slideToggle(1000)
    }
else if ($(('#contactpage').css('display') == "block")) {
    $('#contactpage') .slideToggle(1000)
    $('#aboutpage') .delay(1000).slidetoggle(1000)
}else {
    $('#portfolio').slideDown(1000);
     $('#aboutpage').slideUp(1000);
}
});
4

1 に答える 1

0

もう一度やってみます。を使用する代わりに、それらすべてslideToggleを上にスライドさせてから、現在の1つを下にスライドさせます。ただし、最初から表示されていない場合に限ります。

$('.about').click(function() {
    var wasVisible = $("#aboutpage").is(":visible");
    $("#aboutpage").slideUp();
    $("#portfolio").slideUp();
    $("#contactpage").slideUp();
    if (!wasVisible) {
        $('#aboutpage').slideDown(1000)
    }
}

ここでデモ。

于 2012-10-21T00:58:10.230 に答える