jQuery如何设置第一个选项卡为活动状态?

4
 $( '#xxx' ).tabs({
select: function(event, ui) { 
var theSelectedTab2 = ui.index;

if (theSelectedTab2  == 0) {
$('ul li.ep_s1').removeClass('ep_s1').addClass('ep_s-click1');
if ($('ul li#h13').hasClass('ep_l-click1')) {
   $('ul li#h13').removeClass('ep_l-click1').addClass('ep_l1');
}}
else if (theSelectedTab2  == 1 ) {
$('ul li.ep_l1').removeClass('ep_l1').addClass('ep_l-click1');
if ($('ul li#h12').hasClass('ep_sidebar_friends-click1')) {
   $('ul li#h12').removeClass('ep_s-click1').addClass('ep_s1');
}}
 }
}); 

如果我使用selected: 0,它将设置第一个选项卡为活动状态,但现在不会执行if (theSelectedTab2 == 0)语句并添加这些类。
如果在页面加载后点击这些选项卡,则脚本能够完美地工作。
基本上,我希望在页面加载时if (theSelectedTab2 == 0)语句以及其内部发生的一切都处于活动状态。
谢谢。

你尝试在第一个选项卡上使用 trigger('click'); 了吗? :) - Khez
4个回答

5
也许在标签初始化后,以下行代码会被执行:
$( '#xxx' ).tabs('select', 0);

希望它还能触发你想要的事件。

1
在页面加载后触发第一个选项卡的点击事件?
例如:$('第一个选项卡选择器').click()

1
我必须这样做才能让它工作:

jQuery( "#xxx" ).tabs({active: 1});
jQuery( "#xxx" ).tabs("option", "active", 0);

这样做很快就会触发事件。

0

这就是我会做的事情

$(function () {
    $("ul.nav-tabs li:first").addClass("active");
    $(".tab-content .tab-pane:first").addClass("active");
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接