我正在尝试在DOM上的jQuery选项卡中打开最后一个选项卡,但我在网上找到的解决方案似乎不起作用。我按照jQuery UI Demo站点中的示例使用垂直选项卡。
JS -
$( "#personnelStats_tabs" ).tabs().addClass( "ui-tabs-vertical ui-helper-clearfix" );
$( "#personnelStats_tabs li" ).removeClass( "ui-corner-top" ).addClass( "ui-corner-left" );
CSS -
.ui-tabs-vertical { width: 55em; }
.ui-tabs-vertical .ui-tabs-nav { padding: .2em .1em .2em .2em; float: left; width: 12em; }
.ui-tabs-vertical .ui-tabs-nav li { clear: left; width: 100%; border-bottom-width: 1px !important; border-right-width: 0 !important; margin: 0 -1px .2em 0; }
.ui-tabs-vertical .ui-tabs-nav li a { display:block; }
.ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active { padding-bottom: 0; padding-right: .1em; border-right-width: 1px; border-right-width: 1px; }
.ui-tabs-vertical .ui-tabs-panel { padding: 1em; float: right; width: 40em; }
答案 0 :(得分:3)
使用.last()
获取最后一个元素:
$(".ui-tabs-nav li").last()
答案 1 :(得分:1)
我有一个关于jQueryUI标签的博客/教程可能会有帮助。
http://spyk3lc.blogspot.com/2012/08/jqueryjqueryui-help-tabs-get-currently.html
另外,请尝试:
// for last tab
$(".ui-tabs-nav li:last")
// with your code as shown
$("#personnelStats_tabs .ui-tabs-nav li:last")
// for last panel
$(".ui-tabs-panel:last")
// with your code as shown
$("#personnelStats_tabs .ui-tabs-panel:last")
哎呀,刚刚意识到新的jquery有变化,我必须更新我的博客!为什么他们改变班级名称!
有关详细信息,请参阅jQuery :last Selector
如果需要,你也可以使用jQuery的.last()函数代替:last selector。
答案 2 :(得分:1)
感谢大家的帮助。不幸的是,我在我的问题中并不够具体(写得过于匆忙)并且没有给出解决方案。但是,从2009年我错过的类似帖子的链接以及.last()
的使用帮助我找到了解决方案:
$(document).ready(function() {
//Initiate jQuery Tabs
var $tabs = $( "#personnelStats_tabs" ).tabs();
//Get the index of the last tab
var last = $(".ui-tabs-nav li").last().index();
//Add hack for vertical tabs
$tabs.addClass( "ui-tabs-vertical ui-helper-clearfix" );
$( "#personnelStats_tabs li" ).removeClass( "ui-corner-top" ).addClass( "ui-corner-left" );
//Select the last tab
$tabs.tabs("select", last);
});
谢谢大家! +1给所有人