3

我正在使用以下代码来管理 jQuery UI 对话框:

$("#mydialog").dialog({
      autoOpen: false,
      title: "myDialog",
      modal: true,
      width: "800",
      hide: null,
      open: function(event, ui){  
        //some code
    },
     close: function(event, ui){ 
        $("#mydialog").dialog("option", "fade", null);       
    }
});

然后我打开调用此代码的对话框:

$("#mydialog").dialog("option", {
    modal: true
}).dialog("open");

这很好用,但是当我关闭对话框时我看不到任何效果。

如何修改我的代码以获得此结果?

4

2 回答 2

8

如果我理解正确,您希望您的对话框以淡化效果关闭。

    $("#mydialog").dialog({
    autoOpen: false,
    title: "myDialog",
    modal: true,
    width: "800",
    hide: { effect: "fade", duration: 200 } //put the fade effect
});
于 2013-09-25T19:48:13.663 回答
0

这里的诀窍是在淡入淡出过程完成后让对话真正关闭,而不是在它之前。

尝试使用此代码关闭对话框,它应该可以解决问题:

$("#mydialog").fadeTo('slow', 0, function() {
  $("#mydialog").dialog('close');
});
于 2013-09-25T19:45:54.643 回答