0

皆様にお会いできて光栄です。私はこれが初めてですが、少し野心的です。

いくつかのコーナーをスキップした後、show/Hide Div を作成しました。これは機能しますが、まだずさんです。コールバックを機能させることができなかったため、意図的に遅延が発生しています。これは、コンテンツ ボックスにありえないほどの量のテキストがある場合に問題になる可能性があります... 言うまでもなく、将来のプロジェクトのために学習しても害はありません。

だから私はこれを共有し、非常に陳腐なので批判を求め、そもそもコールバックを機能させる方法を尋ねています。(もちろん、必要に応じてコードを自由に使用してください。)

これがフィドルです。

$("#open").click(function () {
    $(this).hide("fast");
    $("#content").delay(50).show("fold");
    $("#close-bottom,#close-top").delay(800).fadeIn(0);
});

$("#close-bottom,#close-top").click(function () {
    $("#close-bottom,#close-top").hide("fast");
    $("#content").hide("fold");
    $("#open").delay(300).fadeIn(0);
});
4

1 に答える 1

0

"fold"次のように、2 番目の引数としてコールバックを追加できます。

$("#open").click(function () {
    $(this).hide("fast");
    $("#content").show("fold", function() {
        $("#close-bottom,#close-top").fadeIn(0);
    });
});

$("#close-bottom,#close-top").click(function () {
    $("#close-bottom,#close-top").hide("fast");
    $("#content").hide("fold", function() {
        $("#open").fadeIn(0);
    });
});

jsfiddle デモ

.showまたは.hideのドキュメントによると、メソッド呼び出し.show( [duration ] [, easing ] [, complete ] )は jQuery 1.4.3easingで追加され、and だけでの呼び出しをサポートします (デフォルトの期間complete callback functionを維持します)。400

于 2013-02-25T05:48:15.217 に答える