博客列表 >利用jquery写选项卡

利用jquery写选项卡

Serendipity-Ling
Serendipity-Ling原创
2017年12月23日 16:05:301397浏览

QQ图片20171223160349.pngQQ图片20171223160257.png

QQ图片20171223160334.png

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="jquery-3.2.1.js"></script>
    <title>jquery选项卡</title>
    <style>
        * {
            margin: 0 auto;
            padding: 0 auto;
        }
        .nav {
            margin: 30px auto;
            width: 300px;
        }
        ul {
            list-style: none;
            padding: 0;
        }
        li {
            display: table-cell;
            height: 20px;
            line-height: 20px;
            border-right: 1px solid black;
            background-color: #10aea3;
            padding-right:5px ;
        }
        .hide {
            display: none;
        }
        .current {
            background-color: #91cebf;
            color: #e6e6e6;
        }
    </style>
</head>
<body>
<div class="nav">
    <ul>
        <!--index为选项卡的索引,current为该选项卡激活的样式,onclick为点击事件-->
 <li index="a1" class="current" onclick="tab(this);">BMW</li>
        <li index="a2"  onclick="tab(this);">Benz</li>
        <li index="a3"  onclick="tab(this);">Volvo</li>
    </ul>

    <div class="content">
    <div id="a1">
        <img src="1.jpg" alt="BMW" width="300" >
    </div>
    <div id="a2" class="hide">
        <img src="2.jpg" alt="Benz" width="300"  >
    </div>
    <div id="a3" class="hide">
        <img src="3.jpg" alt="Volvo" width="300" >
    </div>
    </div>
</div>
<script>
    function tab(self) {
        $(self)  //这里采用链式写法
 .addClass('current') //添加current样式
 .siblings()  //将其它非当前选项卡的高亮样式取消,先选择当前的兄弟节点
 .removeClass('current'); //如果有兄弟节点有current,则把他移除
 var box = '#'+$(self).attr('index');  //获取当前的自定义索引属性,获取当前点击的是哪一个
 $(box)
            .removeClass('hide') //去掉隐藏样式
 .siblings() //获取其他兄弟节点
 .addClass('hide'); //给它们添加hide,隐藏他们
 }

</script>
</body>
</html>


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议