1

切り替えるフィルターがあります。

上記の領域をクリックすると、フィルター領域のサイズが正しく切り替わります。

私ができるようにしたいのは、別のボタンでも閉じることです。

別の方法で高さを 15 に設定すると機能しますが、トグル状態が変更されていないことを前提としているため、数回クリックしてサイクルを同期する必要があります。

フィルターの切り替えが発生するように指示する方法はありますか。個別に閉じるのではなく。

 $("#filtertoggle").toggle(function () {
                $("#filterarea").animate({ height: "200px" }, 400);
            },
            function () {
                $("#filterarea").animate({ height: "15px" }, 400);
            });

以下を呼び出すと、実際にはパラメーター化されていないトグルにすぎないため、filtertoggle が非表示になります。私が作成したメソッドを呼び出しません。

$("#goFilter").click(function () {
    $( ".filtertoggle" ).toggle();
}
4

2 に答える 2

2

このコードを使用

var i = 0;
$("#goFilter").click(function () {
    var ht = (i++ % 2 == 0) ? 200 : 15;
    $("#filterarea").animate({
        height: ht + 'px'
    }, 400);
});

$("#filtertoggle").click();

http://api.jquery.com/category/deprecated/

http://api.jquery.com/toggle-event/

トグル イベントのような機能を生成するには

デモ

.one()ドキュメント。

function handler1() {
    alert('First handler: ' + $(this).text());
    $(this).one("click", handler2);
}
function handler2() {
    alert('Second handler: ' + $(this).text());
    $(this).one("click", handler1);
}
$("div").one("click", handler1);

jQuery クリック / 2 つの機能の切り替え

于 2013-09-26T14:29:29.977 に答える