jQuery UI动画对话框显示/隐藏问题
问题描述:
我使用对话框作为各种AJAX函数的加载覆盖,但是当对话框显示或隐藏连接到它的动画时,直到AJAX函数为止,对话框才会打开/关闭完成。jQuery UI动画对话框显示/隐藏问题
这里是我使用的(简化)代码:
$("#loading_dialog").dialog(
{
show: "fade",
hide: "fade",
closeOnEscape: false,
stack: false,
draggable: false,
height: 421,
width: 500,
modal: false,
position: {my: 'right', at: 'left', of: '#side_div', offset: "2 0"},
resizable: false,
dialogClass: 'loading',
zIndex: 900,
autoFocus: false
});
$("#start_ajax").click(function()
{
$("#loading_dialog").dialog("open");
$.when(ajaxFunction())
.then(function()
{
//do stuff
$("#loading_dialog").dialog("close");
})
.fail(function()
{
//handle error
});
});
#loading_dialog
不开,直到ajaxFunction()
通话已结束,但是当我注释掉在对话框初始化显示选项将立即。当我尝试关闭对话框时也会发生同样的情况。
只是我吗?
答
是你的问题。不要等待ajax完成,利用ajax回调函数。 AJAX的整个想法并不是阻碍,你明确的做法。
棒这样的:
$("#loading_dialog").dialog("close");
到Ajax回调。
这样做,欢呼:) – tim 2011-05-09 15:52:03