因此,經過很長時間的許多失敗嘗試後,我設法找到了幾個這樣做的方法。
第一種方法是你添加的$(document)。在方法click事件添加到主分區,它允許你跟蹤的網頁上的任何點擊隱藏對話框如果顯示
上述方法的作品,但我認爲更好的解決方案將覆蓋jquery dialogextend的最小化和關閉按鈕的現有功能,以便可以隱藏和顯示對話框單擊按鈕,並可以使用類似行爲的對接功能,如果dialogboxextend事件被覆蓋。
這是我如何做到這一點,如果任何人需要在未來做到這一點。
首先,我將創建jQueryUI的dialogboxextend對話框
$(".myCusClass").click(function() {
$("#divDialog").dialog({
width: 400,
height: 450
}).dialogExtend({
"closable": true,
"maximizable": false,
"minimizable": true,
"restore": false,
"collapsable": false,
beforeMinimize: function (event, ui) {
event.preventDefault();
$("#divDialog").hide();
$("#minimizedDiv").show();
$("#divDialog").close();
},
beforeRestore: function (event, ui) {
event.preventDefault();
$("#divDialog").hide();
$("#minimizedDiv").hide();
}
});
return false;
});
通知我有覆蓋beforeminimize和beforerestore方法,所以我可以隱藏和顯示對話框,而無需實際關閉對話框。以下解釋碼頭工人。
<div id="minimizedDiv" class="panel panel-default " style="width: 200px; margin-left: 10px; margin-top: -20px; display: none;">
<div class="panel-heading top-bar ">
<span class="ui-dialog-title" style="width: 150px; margin-left: -5px"><b style="vertical-align: top;">Attach files...</b>
</span>
<a class="ui-dialog-titlebar-plus ui-corner-all ui-state-default" href="#" title="maximize" role="button" onclick="RestoreWindow()"></a>
<a class="ui-dialog-titlebar-close ui-corner-all ui-state-default" href="#" title="close" role="button" onclick="CloseWindow()"></a>
</div>
</div>
上面將充當泊塢窗,將在對話框被最小化時使用。以下是用於從碼頭恢復和關閉對話框的功能
function RestoreWindow() {
$("#divDialog").show();
$("#minimizedDiv").hide();
}
function CloseWindow() {
$('#divDialog').dialog('close');
}