mirror of
https://github.com/jquery/jquery-ui.git
synced 2024-11-21 11:04:24 +00:00
Dialog: Fixed #3032: Calling open on an already open dialog no longer causes problems.
This commit is contained in:
parent
80e59fb0b2
commit
0f6d7502ca
@ -144,6 +144,7 @@ $.widget("ui.dialog", {
|
|||||||
}
|
}
|
||||||
|
|
||||||
this.createButtons(options.buttons);
|
this.createButtons(options.buttons);
|
||||||
|
this.isOpen = false;
|
||||||
|
|
||||||
(options.bgiframe && $.fn.bgiframe && uiDialog.bgiframe());
|
(options.bgiframe && $.fn.bgiframe && uiDialog.bgiframe());
|
||||||
(options.autoOpen && this.open());
|
(options.autoOpen && this.open());
|
||||||
@ -241,6 +242,8 @@ $.widget("ui.dialog", {
|
|||||||
},
|
},
|
||||||
|
|
||||||
open: function() {
|
open: function() {
|
||||||
|
if (this.isOpen) { return; }
|
||||||
|
|
||||||
this.overlay = this.options.modal ? new $.ui.dialog.overlay(this) : null;
|
this.overlay = this.options.modal ? new $.ui.dialog.overlay(this) : null;
|
||||||
this.uiDialog.appendTo('body');
|
this.uiDialog.appendTo('body');
|
||||||
this.position(this.options.position);
|
this.position(this.options.position);
|
||||||
@ -255,6 +258,8 @@ $.widget("ui.dialog", {
|
|||||||
};
|
};
|
||||||
this.uiDialogTitlebarClose.focus();
|
this.uiDialogTitlebarClose.focus();
|
||||||
this.element.triggerHandler("dialogopen", [openEV, openUI], this.options.open);
|
this.element.triggerHandler("dialogopen", [openEV, openUI], this.options.open);
|
||||||
|
|
||||||
|
this.isOpen = true;
|
||||||
},
|
},
|
||||||
|
|
||||||
// the force parameter allows us to move modal dialogs to their correct
|
// the force parameter allows us to move modal dialogs to their correct
|
||||||
@ -282,6 +287,8 @@ $.widget("ui.dialog", {
|
|||||||
};
|
};
|
||||||
this.element.triggerHandler("dialogclose", [closeEV, closeUI], this.options.close);
|
this.element.triggerHandler("dialogclose", [closeEV, closeUI], this.options.close);
|
||||||
$.ui.dialog.overlay.resize();
|
$.ui.dialog.overlay.resize();
|
||||||
|
|
||||||
|
this.isOpen = false;
|
||||||
},
|
},
|
||||||
|
|
||||||
destroy: function() {
|
destroy: function() {
|
||||||
|
Loading…
Reference in New Issue
Block a user