0

私はこれをやろうとしています:

$('#mypopup').dialog({
    modal: true,
    autoOpen: true,
    resizable: false,
    show: {effect:'slide',duration:250},
    hide: {effect:'slide',duration:250}
});

それからそれを開くために..。

function showPopup() {
        if ($('#mypopup').length == 0) {
            $('#mypopup-div').load('mypopupurl/show.php'); 
        } else {
            //reopen the login dialog previously rendered, don't load again
            $('#mypopup').dialog('open'); 
        }
    }

それからそれを閉じるために..。

$('#mypopup').dialog('close');

私の問題は、上記のコードのスライド効果の表示は、実際に.load('mypopupurl / show.php');からロードされたときに初めて機能することです。それを閉じてポップアップダイアログを再度開くと、.dialog('open');でelseステートメントがヒットします。コード、今回はスライド効果は発生しません。(エラーではなく、通常どおりポップアップしますが、効果はありません)

これはJQueryの不具合ですか?それとも設計によるものですか?dialog('open')にヒットしたときにエフェクトを機能させるにはどうすればよいですか?

4

1 に答える 1

1

私はあなたが次のようなことをすることができると思い $('#mypopup').show();ます$('#mypopup').dialog().show();

于 2012-06-27T12:30:30.887 に答える