0

slideToggle を使用して div を表示/非表示にしようとしていますが、同時に別の div の内容を変更しています。

これまでのところ、私は持っています:

        $('#show-advanced').click(function(){
            $("#advanced").slideToggle("fast","linear",function() {
              $('#show-advanced').html('Advanced Options ▴');
            }, function() {
              $('#show-advanced').html('Advanced Options ▾');
            });
        });

最初のクリックでコンテンツが変更されましたが、2 回目の切り替えでは元に戻りません。

どんな助けでも大歓迎です。

編集:

以下を使用して修正:

            $("#show-advanced").toggle(function() {
                $('#advanced').slideDown("fast");  
                $('#show-advanced').html('Advanced Options ▴');
            }, function() {
                $('#advanced').slideUp("fast"); 
                $('#show-advanced').html('Advanced Options ▾');
            });
4

1 に答える 1

0

.toggleとの組み合わせが必要なようです.slideToggle:

$('#show-advanced').toggle(function() {
    $("#advanced").slideToggle("fast","linear",function() {
        $('#show-advanced').html('Advanced Options ▴');
    });
), function() {
    $("#advanced").slideToggle("fast","linear",function() {
        $('#show-advanced').html('Advanced Options ▾');
    });
});

.toggleクリックするたびに両方の機能をバインドし#show-advanced、それらを交互に切り替えます。

于 2012-10-28T18:18:10.997 に答える