在选择jQuery UI选项卡上显示/隐藏某些div

时间:2014-01-06 00:54:48

标签: javascript jquery html css jquery-ui

我有一个有效的jQuery UI标签,结构类似于:

<script>
    $( "#tabs" ).tabs();
</script>

<div id="tabs">
  <ul>
    <li><a href="#tabs-1"></a>Tab 1</li>
    <li><a href="#tabs-2"></a>Tab 2</li>
  </ul>
  <div id="tabs-1">
    <!-- content of tab 1 -->
  </div>
  <div id="tabs-2">
    <!-- content of tab 2 -->
  </div>
</div>
<div id="extra">
    <!-- some contents here -->
</div>

现在,我想在选择 Tab 2 时隐藏div额外,而在选择 Tab 1 时显示div。我无法理解jQuery UI选项卡上的事件。

2 个答案:

答案 0 :(得分:0)

activate event

$("#tabs").tabs({
    activate: function (e, ui) {
        $('#extra').toggle(ui.newPanel.is('#tabs-1'))
    }
});

演示:Fiddle

答案 1 :(得分:0)

您可以: http://jsfiddle.net/cfnFk/

请参阅小提琴,但下面是js代码......

$( "#tabs" ).tabs({
  activate: function( event, ui ) {
      alert(ui.newTab.index()); //tabs are a zero-based index, so Tab 1 = 0, Tab 2 = 1
      if(ui.newTab.index()===1) $( "#extra" ).hide();
      else $( "#extra" ).show();
  }
});

这假设您使用的是jQuery UI 1.9或更高版本。如果没有,请阅读此https://stackoverflow.com/a/300221/3112803