4

いくつかのdivをslideUpしてから、1 divをslideDownしたい。ただし、いくつか問題があります。

$("#divDocument,#divLocation").slideUp("normal", function()
    { $("#divSearch").slideDown("normal", doStuff()); });

このコードでは、divDocumentは表示されますが、 divLocationは表示されません。divDocumentがまだ非表示になっていない場合でも、 divLocationは既に非表示になっているため、doStuff()イベントがすぐに発生します。

$("#divDocument).slideUp("normal", function()
    { $("#divSearch").slideDown("normal", doStuff()); });

このコードは、divDocumentが完全に非表示になるまで待ってからdoStuff()を呼び出すため、正常に機能します。ここで間違った複数要素セレクターを使用していますか? 私は何か他のことを間違っていますか?

4

2 に答える 2

1

これが私が最終的に使用したコードです。フィルターで正しい方向に私を向けてくれてありがとう、パオロ。

var o = $("#divDocument,#divLocation").filter(':visible');
if (o.length > 0) {
    o.slideUp("normal",
    function() {
        $("#divSearch").slideDown("normal", doStuff);
    });
}
else {
    doStuff();
}
于 2009-03-27T18:13:07.360 に答える