使用選項卡式標題欄建立對話方塊
有時,我們可能希望顯示包含多個內容窗格的對話方塊。jQuery UI 提供的選項卡可以與對話方塊一起使用以實現此目的。雖然在對話方塊的內容容器中包含選項卡可能更常見,但此示例將演示如何在對話方塊的標題欄中建立選項卡列表。
HTML
<button id="openButton">
Open Dialog
</button>
<div id="dialog" style="display:none">
<div class="ui-tabs">
<ul>
<li><a href="#tab_1">Tab 1</a></li>
<li><a href="#tab_2">Tab 2</a></li>
</ul>
<div id="tab_1">
<p>Tab 1 content...</p>
</div>
<div id="tab_2">
<p>Tab 2 content...</p>
</div>
</div>
</div>
jQuery
$(document).ready(function() {
// Options to pass to the jQuery UI Dialog
var options = {
position: {
my: "left top",
at: "left top",
of: window
},
autoOpen: false
};
/* Initialization */
// Initialize the dialog
var dialog = $("#dialog").dialog(options);
// Initialize the tabs
var tabs = $(".ui-tabs").tabs();
/* Gather Elements Before Rearrangement */
var closeButton = dialog.siblings(".ui-dialog-titlebar").find(".ui-dialog-titlebar-close");
var initialTitlebar = dialog.siblings(".ui-dialog-titlebar");
// Find the list of tabs to make the titlebar, add the ui-dialog-titlebar class, and append the close button
var tabbedTitlebar = dialog.find(".ui-tabs ul:first").addClass("ui-dialog-titlebar").append(closeButton);
/* Arranging */
// Remove the initialTitlebar
$(initialTitlebar).remove();
// Create a new .ui-tabs container for the tabbedTitlebar
var tabbedTitlebarContainer = $("<div>", {
class: "ui-tabs"
}).append(tabbedTitlebar);
// Prepend the tabbedTitlebarContainer to the dialog container
dialog.parents(".ui-dialog").prepend(tabbedTitlebarContainer);
/* Show the Dialog */
dialog.dialog("open");
var openButton = $("#openButton").button().click(function() {
dialog.dialog("open");
});
});
工作例項供參考: https : //jsfiddle.net/5x4zz681/