使用 ZUI 标签页实现步骤指示器

ZUI例子模板,Fork来编写你的代码。

HTML

<link rel="stylesheet" href="https://easysoft.github.io/zui/dist/css/zui.min.css">
<link rel="stylesheet" href="https://easysoft.github.io/zui/dist/lib/datatable/zui.datatable.min.css">
<script src="https://easysoft.github.io/zui/dist/js/zui.min.js"></script>
<script src="https://easysoft.github.io/zui/dist/lib/datatable/zui.datatable.js        "></script>
<script src="https://easysoft.github.io/zui/dist/lib/calendar/zui.calendar.min.js"></script>
<link rel="stylesheet" href="https://easysoft.github.io/zui/dist/lib/calendar/zui.calendar.min.css">
<div class="container">
  <h1>使用 ZUI 标签页实现步骤指示器</h1>
  <div id="step" class='step'>
      <ul id="myTab" class="nav nav-secondary nav-justified">
        <li>
          <a href="#tab1" data-toggle="tab"><i class="icon icon-check">1</i>第一步</a>
        </li>
        <li class="active">
          <a href="#tab2" data-toggle="tab"><i class="icon icon-check">2</i>第二步</a>
        </li>
        <li>
          <a href="#tab3" data-toggle="tab"><i class="icon icon-check">3</i>第三步</a>
        </li>
        <li>
          <a href="#tab4" data-toggle="tab"><i class="icon icon-check">4</i>第四步</a>
        </li>
      </ul>
      <div class="tab-content">
        <div class="tab-pane" id="tab1">
          <p>第一步</p>
          <div class="text-right">
            <a class="btn btn-primary" href="#tab2">下一步</a>
          </div>
        </div>
        <div class="tab-pane active in" id="tab2">
          <p>第二步</p>
          <div class="text-right">
            <a class="btn btn-link" href="#tab1">上一步</a>
            <a class="btn btn-primary" href="#tab3">下一步</a>
          </div>
        </div>
        <div class="tab-pane" id="tab3">
          <p>第三步</p>
          <div class="text-right">
            <a class="btn btn-link" href="#tab2">上一步</a>
            <a class="btn btn-primary" href="#tab4">下一步</a>
          </div>
        </div>
        <div class="tab-pane" id="tab4">
          <p>第四步</p>
          <div class="text-right">
       ...

CSS

.step .nav {
  margin: 20px 0;
}
.step .nav > li > a {
  position: relative;
  border-bottom: none;
  border-top: 10px solid #DDF4DF;
  padding-top: 10px;
}
.step .nav > li > a:hover {
  box-shadow: 0 -10px 0 #f1f1f1;
}
.step .nav > li.active > a {
  border-color: #3280fc;
}
.step .nav > li.active + li > a,
.step .nav > li.active + li + li > a,
.step .nav > li.active + li + li + li > a,
.step .nav > li.active + li + li + li + li > a {
  border-color: #38B03F;
}
.step .nav > li > a > i {
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  text-align: center;
  line-height: 20px;
  position: absolute;
  top: -14px;
  background-color: #38B03F;
  color: #fff;
  left: 50%;
  margin-left: -10px;
}
.step .nav > li > a > i:before {
  display: block;
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  background-color: #38B03F;
  top: 0;
  left: 0;
  transform: scale(1);
  opacity: 1;
  transition: transform .4s, top .4s, opacity .4s;
}
.step .nav > li.active > a > i {
  background-color: #3280fc;
}
.step .nav > li.active + li > a,
.step .nav > li.active + li + li > a,
.step .nav > li.active + li + li + li > a,
.step .nav > li.active + li + li + li + li > a {
  border-color: #e5e5e5;
}
.step .nav > li.active + li > a > i,
.step .nav > li.active + li + li > a > i,
.step .nav > li.active + li + li + li > a > i,
.step .nav > li.active + li + li + li + li > a > i {
  background-color: #bbb;
}
.step .nav > li.active > a > i:before,
.step .nav > li.active + li > a > i:before,
.step .nav > li.active + li + li > a > i:before,
.step .nav > li.active + li + li + li > a > i:before,
.step .nav > li.active + li + li + li + li > a > i:before {
  top: 20px;
  transform: scale(.5, 0);
  opacity: 0;
}
.step .tab-pane {
  padding: 20px;
  background: #e5e5e5;
}

JavaScript

$(function() {
    
    // 使得 .tab-content 内的按钮也可以切换标签
    $('#step .tab-content').on('click', '.btn', function() {
    		 $('#step .nav a[href="' + $(this).attr('href') + '"]').trigger('click');
    });
});