美文网首页
实现一个TAB选项卡

实现一个TAB选项卡

作者: 窗的里窗的外 | 来源:发表于2017-03-06 22:13 被阅读0次

这里实现一个简单的需求,当鼠标移入某个div区域时,显示不同的内容,即TAB切换选项卡.这里是用事件来实现, 知识点较少, 下次 写一个构造函数实现的, 理解更加清晰.

分析

  1. HTML 两个div, 一个标题, 一个内容
  2. CSS部分通过给标题,内容的ul设置class属性为active, 先设置ul为display: none, 后给active设置display: block, 此时,默认显示选中的ul部分.
  3. JS部分获取标题下所有的li, 获取内容下的所有ul,因为是逐个显示ul的,遍历所有的li, 给li添加鼠标移入事件 , 把tabs 和 ul的class name修改掉即可. 没有移入时, 将class name设置为active即可

JS部分


    window.onload = function() {
            var $ = function(ids) {
                return document.getElementById(ids);
            }
            var tabs = $("tabs").getElementsByTagName("li");
            var state = $("state");
            var ul = list.getElementsByTagName("ul");

            for (var i = 0; i < tabs.length; i++) {
                tabs[i].index = i;
                tabs[i].onmouseover = function() {
                    for (var i = 0; i < tabs.length; i++) {
                        tabs[i].className = ul[i].className = '';
                    }
                    this.className = ul[this.index].className = "active";
                }
            }
    }

HTML 部分

    <div id="content">
        <div id="tabs">
            <ul>
                <li class="active">暴给力</li>
                <li>职业指导</li>
                <li>充电区</li>
            </ul>
            <span id="state">-</span>
        </div>
        <div id="list">
            <ul class="active">
                <li>IE6 PNG 解决方案合集</li>
                <li>firefox下输入框innerHtml问题</li>
                <li>精品菜单导航,多年精心收集整理上上品菜单</li>
            </ul>
            <ul>
                <li>腾讯面试题</li>
                <li>近期面试感受</li>
                <li>腾讯实习生web前端js开发工程师面试经历</li>
            </ul>
            <ul>
                <li>厘米IT学院第89期</li>
                <li>厘米IT学院第88期</li>
                <li>厘米IT学院第87期</li>
            </ul>
        </div>
    </div>

CSS 部分


    * {
        margin: 0;
        padding: 0;
    }

    body {
        font-size: 12px;
    }

    #content {
        /*margin: 0 auto;*/
        width: 600px;
        border: 1px #000 solid;
    }

    #tabs {
        height: 30px;
        background: black;
        overflow: hidden;
        position: relative;
    }

    #tabs #state {
        display: block;
        top: 0;
        right: 0;
        width: 30px;
        height: 30px;
        font-size: 24px;
        font-weight: 700;
        text-align: center;
        color: #fff;
        cursor: pointer;
        position: absolute;
    }

    #tabs li {
        display: inline;
        /**/
        padding: 0 8px;
        line-height: 30px;
        color: #fff;
        list-style: none;
        cursor: pointer;
        float: left;
    }

    #tabs .active {
        color: #000;
        background: #fff;
    }

    #list {
        padding: 10px 0;
    }

    #list ul {
        margin: 0 25px;
        display: none;
    }

    #list ul li {
        height: 25px;
        line-height: 25px;

    }

    #list .active {
        display: block;
    }

相关文章

  • vue-Element UI Tab选项卡从子页跳回选项卡问题

    一、Element UI Tab选项卡从子页跳回选项卡情景: 1.有一个Tab选项卡(Tab A 、 Tab B、...

  • Web实现Tab选项卡功能(二)

    Web实现Tab选项卡功能(一) 序言 废话就不多说了,直接上图,今天带来一个Tab选项卡 + 二级菜单的功能,相...

  • 1.9 电影

    1、小程序的tab选项卡 1.1 配置项目tab选项卡 app.json tabBar 如果小程序是一个多 tab...

  • 底部带有小蓝条的选项卡

    需求设计稿如图: 实现 思路: 四个tab用flex布局 space around 实现每个选项卡下面做...

  • Anroid入门 -- Tab选项卡

    实现方式 Android 实现Tab选项卡的方式非常多,印象当中就有这么几种: 传统的ViewPager Frag...

  • 实现一个TAB选项卡

    这里实现一个简单的需求,当鼠标移入某个div区域时,显示不同的内容,即TAB切换选项卡.这里是用事件来实现, 知识...

  • Vue实现选项卡效果

    效果图:点击上方选项卡实现下方数字切换效果 body部分: {{item.tab}} {{item.title...

  • jQuery实现tab选项卡

    学习资料来源 http://v.apelearn.com/student.php 选项卡原理 规定: 选中代表激活...

  • vue实现tab选项卡

    效果图: 应用场景: 不同注册和登录方式切换 操作选项切换 如保存和取消 后台管理系统中各菜单选项切换等 新闻标题...

  • jQuery实现Tab选项卡

    知识点: 效果展示:

网友评论

      本文标题:实现一个TAB选项卡

      本文链接:https://www.haomeiwen.com/subject/jcfpgttx.html