首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >标签系统: JS在当前标签上向上滑动

标签系统: JS在当前标签上向上滑动
EN

Stack Overflow用户
提问于 2018-01-05 21:22:41
回答 1查看 207关注 0票数 1

当您选择选项卡时,我正在尝试使选项卡中的内容向上滑动。所以当你点击一个标签时,标签里面的文字会从底部滑上来。

代码语言:javascript
运行
复制
$(document).ready(function() {
  var selectedtab;
  $('ul.tabs li').click(function() {
    var tab_id = $(this).attr('data-tab');
    $('ul.tabs li').removeClass('current');
    $('.tab-content').removeClass('current');
    if (selectedtab) $("#" + selectedtab).hide();
    $("#" + tab_id).slideUp("slow", function() {
      // Animation complete.
    });
    selectedtab = tab_id;
    $(this).addClass('current');
  })
})
代码语言:javascript
运行
复制
.container {
  display: flex;
}

.purpleBackground {
  align-self: flex-end;
  background-color: #65308b;
  opacity: 0.9;
  width: 60%;
  height: 80%;
  bottom: 0px !important;
  padding: 60px 40px;
  border: 1px solid #fff;
}

.whiteText {
  color: #fff;
}

ul.tabs {
  margin: 0px;
  padding: 0px;
}

ul.tabs li {
  background: none;
  color: #222;
  display: block;
  padding: 20px 15px;
  cursor: pointer;
  font-size: 17px;
  border-width: 0px 0px 1px 0px;
}

ul.tabs li.current {
  background: #65308b;
  color: #fff;
}

.tab-content {
  display: none;
  color: #fff;
}

.tab-content.current {
  display: inherit;
}

.sectionBackground {
  background: url("http://www.choicecare.ds-    
 demo.co.uk/wp-content/uploads/2017/12/placeholder.png");
 background-size:cover;
  display: flex;
  /** I have just put a height value, but when you come to use match     height
    See Line 14 in the .JS**/
  height: 450px;
}
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container">

  <div class="col-md-4 ">
    <ul class="tabs">
      <li class="tab-link current" data-tab="tab-1">General Care</li>
      <li class="tab-link" data-tab="tab-2">Dementia Care</li>
      <li class="tab-link" data-tab="tab-3">End of Life (EOLC)</li>
      <li class="tab-link" data-tab="tab-4">Hospital Discharge</li>
      <li class="tab-link" data-tab="tab-5">Review and Monitoring</li>
      <li class="tab-link" data-tab="tab-6">Holiday Cover</li>
      <li class="tab-link" data-tab="tab-7">Advanced Care Planning (ACP)
      </li>
    </ul>
  </div>


  <div class="col-md-8">
    <div class="sectionBackground">
      <div class="purpleBackground">
        <div id="tab-1" class="tab-content current">Test</div>
        <div id="tab-2" class="tab-content">Test</div>
        <div id="tab-3" class="tab-content">Test</div>
      </div>
    </div>
  </div>
</div><!-- container -->

我要在JS中做些什么才能让它工作呢?正确的代码和解释将不胜感激!

EN

回答 1

Stack Overflow用户

发布于 2018-01-05 22:11:19

这是一个很好的问题,lian geary。在最大限度上,我们需要使用标签系统。您可以使这些选项卡动画淡入淡出或滑动。现在我将向你展示如何在HTML5,CSS2和jQuery (主要是JavaScript)中创建标签系统的代码……

HTML5代码...

代码语言:javascript
运行
复制
<!DOCTYPE html>
<html lang="en-US">
    <head>
        <meta charset="UTF-8" />
        <title>Webcoachbd Tab System tutorials</title>
        <link rel="stylesheet" href="../tabSystem/style.css"
        type="text/css" />
        <script src="../jquery_latest.js" type="text/javascript"></script>
        <script src="../tabSystem/script.js" type="text/javascript"></script>
    </head>

    <body>
        <div id="tab_system"><!-- start of tab_system-->
            <ul id="tab_bar">
                <li>
                    <a href="#">Current Hits</a>
                </li>
                <li>
                    <a href="#">Our Favourites</a>
                </li>
                <li>
                    <a href="#">All Time</a>
                </li>
            </ul>
            <ul id="current" class="tab_list">
                <li>
                    <a href="javascript:void(0)">Who behind behind this | About us</a> 
                </li>
                <li>
                    <a href="javascript:void(0)">HTML tutorials</a> 
                </li>
                <li>
                    <a href="javascript:void(0)">Jquery Tutorials</a> 
                </li>
                <li>
                    <a href="javascript:void(0)">Contact us if need</a> 
                </li>
            </ul>
            <ul id="favorite" class="tab_list">
                <li>
                    <a href="javascript:void(0)"></a> 
                </li>
                <li>
                    <a href="javascript:void(0)">this is our favorite post</a> 
                </li>
                <li>
                    <a href="javascript:void(0)">Short Sale Info</a> 
                </li>
                <li>
                    <a href="javascript:void(0)">Testimonials</a> 
                </li>
                <li>
                    <a href="javascript:void(0)">Contact</a> 
                </li>
            </ul>
            <ul id="all_time" class="tab_list">
                <li>
                    <a href="javascript:void(0)">Mortgage Forgiveness Debt Relief Act</a>
                </li>
                <li>
                    <a href="javascript:void(0)">5 Reasons to Hire Us</a>
                </li>
                <li>
                    <a href="javascript:void(0)">this is our favorite post</a>
                </li>
                <li>
                    <a href="javascript:void(0)">this is our fav post 2</a>
                </li>
            </ul>
        </div><!-- end of tab_system-->
    </body>
</html>

CSS2代码...

代码语言:javascript
运行
复制
body{
     font-family:Verdana;
     font-size:13px;
}
ul{
    padding:0;
    margin:5px 0 0 0;
}
#tab_system{
     width:400px;
     margin:0 auto;
     overflow:hidden;
     border:1px solid #ccc;
     border-radius:5px;
     padding:10px;
}

#tab_bar{
    float:left; 
}
#tab_bar li  .running{
    background:#fff;
    border-top:1px solid #ccc;
    border-right:1px solid #ccc;
    border-left:1px solid #ccc;
    color:#000;
}

#tab_bar li{
    list-style:none;
    float:left;

}
#tab_bar li a{
    padding:5px;
    text-decoration:none;
    background:#333;
    border:#111;
    color:#fff;
}
#tab_bar li a:nth-child(1),#tab_bar li a:nth-child(2){
    margin-right:2px;
}
#tab_system .tab_list li{
    list-style:none;
}
#tab_system .tab_list{
    float:left;
    border-left:1px solid #ccc;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
    min-width:260px;
}
#tab_system .tab_list li a{
    padding:5px;
    text-decoration:none;
    display:block;
    float:left;
    clear:both;
}
#tab_system .tab_list li a:hover{
    text-decoration:underline;
}

最后是jQuery代码...

代码语言:javascript
运行
复制
//tab slider jquery code
$(document).ready(function(){//Default view
    $('#current').show();
    $('#tab_bar li:nth-child(1) a').addClass('running');
    $('#favorite,#all_time').hide();
    $('#tab_bar li:nth-child(1) a').click(function(event){//Fire when Current hit clicks
        event.preventDefault();
        $(this).addClass('running');
        $('#tab_bar li:nth-child(2) a,#tab_bar li:nth-child(3) a').removeClass('running');
        $('#current').slideDown(500);
        $('#favorite,#all_time').hide();
    });
    $('#tab_bar li:nth-child(2) a').click(function(event){//Fire when All time clicks
        event.preventDefault();
        $(this).addClass('running');
        $('#tab_bar li:nth-child(1) a,#tab_bar li:nth-child(3) a').removeClass('running');
        $('#favorite').slideDown(500);
        $('#current,#all_time').hide();
    });
    $('#tab_bar li:nth-child(3) a').click(function(event){//Fire when Favorite clicks
        event.preventDefault();
        $(this).addClass('running');
        $('#tab_bar li:nth-child(1) a,#tab_bar li:nth-child(2) a').removeClass('running');
        $('#all_time').slideDown(500);
        $('#favorite,#current').hide();
    });
});

就这样。100%保证代码将会工作...谢谢..。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48114524

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档