淘先锋技术网

首页 1 2 3 4 5 6 7

最近在做一个网站,需要用到tab栏切换的效果,经过一番研究,我发现使用jquery渲染可以方便地实现这个效果。

jquery渲染写tab栏切换

首先,我们需要先在页面中引入jquery库。


<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

接下来,我们可以使用jquery来动态渲染tab栏的结构。首先,我们需要定义一个包含tab栏和内容区域的容器,这里我使用了div元素,并给它一个唯一的id。


<div id="tab-container">
  <ul class="tab-nav">
    <li class="active">Tab1</li>
    <li>Tab2</li>
    <li>Tab3</li>
  </ul>
  <div class="tab-content">
    <div class="active">Content1</div>
    <div>Content2</div>
    <div>Content3</div>
  </div>
</div>

然后,我们可以使用jquery来实现tab栏的切换效果。首先,我们需要隐藏所有内容区域的div元素,除了第一个元素。


$('.tab-content div:not(:first)').hide();

接下来,我们需要为每个tab栏li元素添加点击事件,在点击时切换对应的内容区域。


$('.tab-nav li').click(function(){
  var index = $(this).index();
  $(this).addClass('active').siblings().removeClass('active');
  $('.tab-content div').eq(index).show().siblings().hide();
});

最后,我们需要为第一个tab栏li元素添加active类,以显示默认内容区域。


$('.tab-nav li:first').addClass('active');

以上就是使用jquery渲染tab栏切换效果的步骤,完整代码如下:


<div id="tab-container">
  <ul class="tab-nav">
    <li class="active">Tab1</li>
    <li>Tab2</li>
    <li>Tab3</li>
  </ul>
  <div class="tab-content">
    <div class="active">Content1</div>
    <div>Content2</div>
    <div>Content3</div>
  </div>
</div>

<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<script>
  $(function(){
    $('.tab-content div:not(:first)').hide();
    $('.tab-nav li').click(function(){
      var index = $(this).index();
      $(this).addClass('active').siblings().removeClass('active');
      $('.tab-content div').eq(index).show().siblings().hide();
    });
    $('.tab-nav li:first').addClass('active');
  });
</script>