我找到了一个功能,可以在用户点击按钮时创建一个新的查询ui选项卡面板。它还会创建一个带有关闭按钮的新选项卡,如下所示:
$(function newTab() {
var $tabs = $('#nav-tabs').tabs();
$('.add-tab').click(function (e) {
e.preventDefault()
var tabName = $(this).text(),
tabLink = $(this).attr('href'),
tabNumber = -1;
$tabs.find('.nav-tab-menu li a').each(function (i) {
if ($(this).text() == tabName) {
tabNumber = i;
}
});
if (tabNumber >= 0) {
$tabs.tabs('option', 'active', tabNumber)
} else {
$("<li><a href=" + tabLink + " class='ui-icon-tab-add'>" + tabName + "</a><span class='ui-icon-close' role='presentation'><span class='sr'>Remove Tab</span></span></li>")
.appendTo(".nav-tab-menu");
$("#nav-tabs").tabs("refresh");
$('#nav-tabs').tabs('option', 'active', -1);
}
return false
})
});
效果很好,但是这个客户端总是很痛苦,而且一个关闭按钮对他们来说还不够好 - 他们也想在新创建的面板中使用一个。我已经尝试克隆按钮并将其附加到面板上,但它似乎无法正常工作。有任何想法吗?我应该提一下,当用户单击链接时,当前选项卡的内容会被替换,因此可能需要在活动选项卡面板之前插入按钮,而不是在其中插入,因此当内容为时,它不会被删除更新。