0

リンクをクリックするとトグルダウンする特定の部分をWebサイトに実装しようとしています.トグルがすでにページにある場合は、これを閉じて選択したものを開きます.

ここを参照してください: http://jsfiddle.net/r79Nu/3/

問題は、特定のリンクをクリックすると、トグルダウンが停止して削除されることです。現時点では、リンクを 2 回目にクリックするたびに div が表示されます。

コードは次のとおりです。

    $('#nav a').click(function () {
    var headerItem = $(this).attr('data-header');
    if ($('#header_container').is(':visible')) {
        $('#header_container').slideUp(500, function() {
            $('.header_item').hide();
            $('#'+headerItem).show();
            $('#header_container').slideToggle(500);
        });
    }
    else {
        $('#'+headerItem).show();
        $('#header_container').slideToggle(500);
    }

});

これが理にかなっていることを願っています。

4

2 に答える 2

1

このコードを追加して、既に選択されている場合にトグルしないようにします。

$('#nav a').click(function () {
    var headerItem = $(this).attr('data-header');
    if ($('#header_container #'+headerItem).is(':visible')) {
        $('#header_container').slideUp(500);  // or whatever method to make it disappear
        return false;
    } 
    .... rest of your code ...
}
于 2013-03-01T20:39:29.110 に答える