精华内容
下载资源
问答
  • 面向对象实现tab栏切换效果 转载于:https://www.cnblogs.com/malong1992/p/11517123.html

    面向对象实现tab栏切换效果

    转载于:https://www.cnblogs.com/malong1992/p/11517123.html

    展开全文
  • jQuery实现仿淘宝tab栏切换效果

    千次阅读 2017-09-13 17:07:34
    jQuery实现仿淘宝tab栏切换效果 首先先把html页面主要展示的内容写出来:    国际大牌◆  国妆名牌◆  清洁用品◆  男士精品                               ...

    jQuery实现仿淘宝tab栏切换效果


    首先先把html页面主要展示的内容写出来:

    <div class="wrapper">
      <ul class="tab">
        <li class="tab-item active">国际大牌<span>◆</span></li>
        <li class="tab-item">国妆名牌<span>◆</span></li>
        <li class="tab-item">清洁用品<span>◆</span></li>
        <li class="tab-item">男士精品</li>
      </ul>
      <div class="products">
        <div class="main selected">
          <a href="###"><img src="img/guojidapai.jpg" alt=""/></a>
        </div>
        <div class="main">
          <a href="###"><img src="img/guozhuangmingpin.jpg" alt=""/></a>
        </div>
        <div class="main">
          <a href="###"><img src="img/qingjieyongpin.jpg" alt=""/></a>
        </div>
        <div class="main">
          <a href="###"><img src="img/nanshijingpin.jpg" alt=""/></a>
        </div>
      </div>
    </div>

    效果图如下:


    根据效果图写出css样式:

    <style type="text/css">
        * {
          margin: 0;
          padding: 0;
        }
        
        ul {
          list-style: none;
        }
        
        .wrapper {
          width: 1000px;
          height: 475px;
          margin: 0 auto;
          margin-top: 100px;
        }
        
        .tab {
          border: 1px solid #ddd;
          border-bottom: 0;
          height: 36px;
          width: 320px;
        }
        
        .tab li {
          position: relative;
          float: left;
          width: 80px;
          height: 34px;
          line-height: 34px;
          text-align: center;
          cursor: pointer;
          border-top: 4px solid #fff;
        }
        
        .tab span {
          position: absolute;
          right: 0;
          top: 10px;
          background: #ddd;
          width: 1px;
          height: 14px;
          overflow: hidden;
        }
        
        .products {
          width: 1002px;
          border: 1px solid #ddd;
          height: 476px;
        }
        
        .products .main {
          float: left;
          display: none;
        }
        
        .products .main.selected {
          display: block;
        }
        
        .tab li.active {
          border-color: red;
          border-bottom: 0;
        }
      
      </style>

    雏形效果图:


    写出jQuery代码:<script type="text/javascript" src="js/jquery-3.2.1.min.js" ></script>
      <script>
        $(function () {
          
          $(".tab-item").mouseenter(function () {//鼠标移入tab栏触发事件
            //两件事件
            $(this).addClass("active").siblings().removeClass("active");//给移入的tab栏添加active的效果,其他tab栏移除active效果
            var idx = $(this).index();//定义一个idx变量,idx就等于tab的下标,根据下标找出内容栏的切换内容
            $(".main").eq(idx).addClass("selected").siblings().removeClass("selected");
          });
          
        });
      </script>

    展开全文
  • js实现多tab栏切换效果(二)

    千次阅读 2017-01-25 17:30:34
    上篇js实现tab栏切换效果(一)实现了tab栏的切换效果,如果实现多tab栏的切换效果的话,直接用上面的代码会有小bug。不过不用怕,给每个tab栏加一个id唯一标识的话,就没啥问题了。 废话上说,上代码:<!DOCTYPE ...

    上篇js实现tab栏切换效果(一)实现了tab栏的切换效果,如果实现多tab栏的切换效果的话,直接用上面的代码会有小bug。不过不用怕,给每个tab栏加一个id唯一标识的话,就没啥问题了。
    废话上说,上代码:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <style type="text/css">
                *{
                    margin: 0;
                    padding: 0;
                }
                ul{list-style: none;}
                .box{
                    width: 370px;
                    height: 300px;
                    margin: 100px auto;
                    border: 1px solid #ccc;
                    overflow: hidden;
                }
                .bt span{
                    display: inline-block;
                    width: 80px;
                    height: 30px;
                    background-color: pink;
                    padding: 3px;
                    text-align: center;
                    line-height: 30px;
                    cursor: pointer;
                }
                .bt span.current{
                    background-color: purple;
                }
                .bc li{
                    width: 100%;
                    height: 270px;
                    background-color: purple;
                    display: none;
                }
                .bc li.show{
                    display: block;
                }
            </style>
            <script type="text/javascript">
                window.onload=function(){
                    function fun(obj){
                        // 获取每个tab栏的id
                        var target = document.getElementById(obj);
                        var spans = target.getElementsByTagName("span");
                        var lis = target.getElementsByTagName("li");
                        for (var i=0;i<spans.length;i++) {
                            spans[i].index=i;
                            spans[i].onmouseover= function(){
                                for (var j=0;j<spans.length;j++) {
                                    spans[j].className="";
                                    lis[j].className="";
                                }
                                this.className="current";
                                lis[this.index].className = "show";
                            }
                        }
                    }
                    fun("news");
                    fun("fruits");
                    fun("clothes");
                }
            </script>
        </head>
        <body>
            <div class="box" id="news">
                <div class="bt">
                    <span class="current">新闻</span>
                    <span>娱乐</span>
                    <span>科技</span>
                    <span>经济</span>
                </div>
                <div class="bc">
                    <ul>
                        <li class="show">新闻内容</li>
                        <li>娱乐内容</li>
                        <li>科技内容</li>
                        <li>经济内容</li>
                    </ul>
                </div>
            </div>
            <div class="box" id="fruits">
                <div class="bt">
                    <span class="current">苹果</span>
                    <span>香蕉</span>
                    <span>橘子</span>
                    <span>雪梨</span>
                </div>
                <div class="bc">
                    <ul>
                        <li class="show">苹果酸甜</li>
                        <li>香蕉香香</li>
                        <li>橘子好棒</li>
                        <li>雪梨脆脆</li>
                    </ul>
                </div>
            </div>
            <div class="box" id="clothes">
                <div class="bt">
                    <span class="current">运动装</span>
                    <span>休闲装</span>
                    <span>礼服装</span>
                    <span>乞丐装</span>
                </div>
                <div class="bc">
                    <ul>
                        <li class="show">运动棒棒</li>
                        <li>正好休闲</li>
                        <li>礼服靓靓</li>
                        <li>正合心意</li>
                    </ul>
                </div>
            </div>
        </body>
    </html>
    

    实现效果:
    这里写图片描述

    展开全文
  • js实现tab栏切换效果(一)

    千次阅读 2017-01-25 17:17:02
    利用javascript实现tab栏切换效果, 其中原理“置之死地而后生”,先把所有人干掉,自己再复活。 直接上代码:<!DOCTYPE html> <title></title> *{

    利用javascript实现tab栏切换效果, 其中原理“置之死地而后生”,先把所有人干掉,自己再复活。
    直接上代码:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <style type="text/css">
                *{
                    margin: 0;
                    padding: 0;
                }
                .box{
                    width: 300px;
                    margin: 100px auto;
                    border: 1px solid #ccc;
                }
                .content div{
                    width: 100%;
                    height: 300px;
                    background-color: gold;
                    display: none;
                    line-height: 300px;
                    text-align: center;
                }
                .gold{
                    background-color: gold;
                }
            </style>
            <script type="text/javascript">
                window.onload = function(){
                    var btns = document.getElementsByTagName("button");
                    var divs = document.getElementById("dd").getElementsByTagName("div");
                    for (var i=0;i<btns.length;i++) {
                        //因为上面的button按钮与下面的div盒子是一一对应关系,所以我们用一个序列号index来控制
                        //给每个btns[i]添加一个属性index
                        btns[i].index = i;
                        btns[i].onclick = function(){
                            for (var j=0;j<btns.length;j++) {
                                btns[j].className="";
                            }
                            // 先清空所有按钮的类名,再给当前的按钮添加一个类名  “置之死地而后生”
                            this.className="gold";
                            // 同理,首先隐藏所有的div盒子,再显示与button当前索引号相同的div盒子
                            for (var k=0;k<divs.length;k++) {
                                  divs[k].style.display="none";
                            }
                            divs[this.index].style.display="block";
                        }
    
                    }
    
                }
            </script>
        </head>
        <body>
           <div class="box">
               <div class="title">
                   <button class="gold">语文</button>
                   <button>数学</button>
                   <button>英语</button>
                   <button>物理</button>
               </div>
               <div class="content" id="dd">
                   <div style="display: block;">语文内容介绍</div>
                   <div>数学内容介绍</div>
                   <div>英语内容介绍</div>
                   <div>物理内容介绍</div>
                </div>
            </div>
    
    </body>
    
    </html>
    

    这里写图片描述

    其实代码还可以再进行优化,优化后的代码如下:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <style type="text/css">
                *{
                    margin: 0;
                    padding: 0;
                }
                .box{
                    width: 300px;
                    margin: 100px auto;
                    border: 1px solid #ccc;
                }
                button{
                    cursor: pointer;
                }
                .content div{
                    width: 100%;
                    height: 300px;
                    background-color: gold;
                    display: none;
                    line-height: 300px;
                    text-align: center;
                }
                .gold{
                    background-color: gold;
                }
                .content .show{
                    display: block;
                }
            </style>
            <script type="text/javascript">
                window.onload = function(){
                    var btns = document.getElementsByTagName("button");
                    var divs = document.getElementById("dd").getElementsByTagName("div");
    
                    for (var i=0;i<btns.length;i++) {
                        // 给每一个button添加一个属性index  
                        btns[i].index=i;
                        btns[i].onclick = function(){
                            for (var j= 0;j<btns.length;j++) {
                                btns[j].className="";
                                divs[j].className="";
                            }
                            this.className = "gold";
                            divs[this.index].className="show";
                        }
    
                    }
                }
            </script>
        </head>
        <body>
           <div class="box">
               <div class="title">
                   <button class="gold">语文</button>
                   <button>数学</button>
                   <button>英语</button>
                   <button>物理</button>
               </div>
               <div class="content" id="dd">
                   <div class="show">语文内容介绍</div>
                   <div>数学内容介绍</div>
                   <div>英语内容介绍</div>
                   <div>物理内容介绍</div>
                </div>
            </div>
    
    </body>
    
    </html>
    

    想实现多tab栏切换效果,看js实现多tab切换效果

    展开全文
  • 这里分享一个前端必会的案例,是一个Tab栏切换效果,除了Tab栏本身会被点击切换之外,Tab本身也决定着其下方的内容板块的显示,效果展示:
  • HTML移动端底部tab栏切换效果

    千次阅读 2020-05-12 13:34:44
    效果图 HTML: <%--底部--%> <ul class="foot"> <li class="Imgbox" img="/images/tuiJianCus/index-wxz-icon.png" data-img="/images/tuiJianCus/index-xz-icon.png"> <a href="/...
  • vue实现简单tab栏切换效果

    千次阅读 2018-09-15 16:55:01
    项目中经常用到tab切换效果,一开始都是找插件做,后来偶然的一次发现用Vue实现很简单... 不多说了直接上代码。 HTML结构: &lt;div id="demo"&gt; &lt;div class="demo1" v-...
  • tab栏切换 有2个大的模块:上面的模块选项卡(tab_list)、下面的模块内容(tab_con) <div class="tab"> <!-- 下面的模块内容会与上面的模块选项卡变化而变化,所以 两者的数量应该一一对应,相匹配。 -...
  • vue实现tab栏切换效果

    2020-07-29 16:40:47
    html js css加一个act样式 例如: 这样就可以实现切换效果了, 我里面还加了一点就是点击切换的同时下边的内容也会跟随改变 主要用到的是v-show来实现
  • 纵向tab栏切换效果jq

    2020-03-03 21:11:03
    <ul class="tabs_list_custom"> <li class="item_custom active">语文/li> <li class="item_custom">数学</li> <li class="item_custom">英语</li>...u...
  • 《Android实现连续并排的若干个TextView单击改变背景颜色达到选项卡Tab栏切换效果》 实现的组件交互目的很简单,就是要达到类型tab选项卡的导航栏一样,当用户点击了连续并排的若干个TextView其中之一时候,要产生...
  • 创建template目录 template.wxml 定义: <!--template/template.wxml--> <template name="tem"> <view class='tab_box'>...view class='tab_tab'> <block wx:for="{{tab}}"> ...
  • 用到两个组件:s-tabs组件和tab_item组件 组件定义;定义一个目录后,直接右键该目录创建Component 1:s-tabs组件 <!-- s-tabs组件 js未用到,json默认会开启"component": truee --> <view class='tab_tab'>...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 31,388
精华内容 12,555
关键字:

tab栏切换效果