根据星期几激活标签

时间:2015-07-14 16:58:54

标签: javascript jquery twitter-bootstrap tabs

我在论坛中搜索了相关主题,但我遇到的解决方案无效。

我使用Bootstrap显示带有两个选项卡的选项卡组。 我需要标签1从星期一到星期五自动激活,标签#2在星期六到星期日激活。

这是我的HTML:

 <ul class="cat_filter nav nav-tabs right" role="tablist">
  <li role="presentation" class="active"><a href="#tab1" aria-controls="tab1" role="tab" data-toggle="tab">Tab #1</a></li>
  <li role="presentation"><a href="#tab2" aria-controls="tab2" role="tab" data-toggle="tab">Tab #2</a></li>
  </ul>

<div class="tab-content">
  <div id="tab1" role="tabpanel" class="tab-pane fade in active woocommerce">Some content</div>     
  <div id="tab2" role="tabpanel" class="tab-pane fade woocommerce">Some content</div>    
</div>

我已经尝试过以下主题,但他们不适合我: Weekday jQuery UI Tabs open on current day load correct day of the week inside accordion gallery

2 个答案:

答案 0 :(得分:1)

请尝试以下方法:

<?php if(date('l') == 'saturday' || date('l') == 'sunday'){ //l is smallcase L not number 1
  $day = 'tab2';   
  }else{
  $day = 'tab1';
}
?>
<ul class="cat_filter nav nav-tabs right" role="tablist">
  <li role="presentation" class="<?php if($day == 'tab1'){echo 'active';}?>"><a href="#tab1" aria-controls="tab1" role="tab" data-toggle="tab">Tab #1</a></li>
  <li role="presentation" class="<?php if($day == 'tab2'){echo 'active';}?>"><a href="#tab2" aria-controls="tab2" role="tab" data-toggle="tab">Tab #2</a></li>
</ul>
<div class="tab-content">
  <div id="tab1" role="tabpanel" class="tab-pane fade in active woocommerce">Some content</div>     
  <div id="tab2" role="tabpanel" class="tab-pane fade woocommerce">Some content</div>    
</div>

答案 1 :(得分:1)

这是javascriptjquery中的替代解决方案。我们首先确定日期索引,如果它是0(星期日)或6(星期六),则选项卡1处于活动状态,否则激活Tab 2。 See jsfiddle here

$(function(){
    var today =  new Date()
    var todayIdx = today.getDay();
    console.log('today:', todayIdx);

    if (todayIdx == 0 || todayIdx == 6) {
        $('a[aria-controls="tab1"]').closest('li').addClass('active');
        $('a[aria-controls="tab2"]').closest('li').removeClass('active');
    }
    else {
        $('a[aria-controls="tab2"]').closest('li').addClass('active');
        $('a[aria-controls="tab1"]').closest('li').removeClass('active');
    }
});
相关问题