欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jQuery下实现选项卡

程序员文章站 2022-03-10 08:36:48
$(‘ul>li’).click(function() { $(this).addClass(‘active’).siblings().removeClass(‘active’)(′ol>li′).eq(('ol>li').eq((′ol>li′).eq((this).index()).addClass(‘active’).siblings().removeClass(‘active’)}) ’选项卡头:ul选项卡体:ol$(‘ul>li’)....

$(‘ul>li’).click(function() { $(this).addClass(‘active’).siblings().removeClass(‘active’)
( ′ o l > l i ′ ) . e q ( ('ol>li').eq( (ol>li).eq((this).index()).addClass(‘active’).siblings().removeClass(‘active’)
}) ’
选项卡头:ul
选项卡体:ol
$(‘ul>li’).click(function(){}): 设置卡头li的点击事件
$(this):点击的哪一个li
addClass(‘active’):给点击的li添加classname(active)
siblings():找到ul点击的li的所有兄弟
removeClass(‘active’):移除所有兄弟的classname(active)
$(this).index():找到点击的li的索引
( ′ o l > l i ′ ) . e q ( ('ol>li').eq( (ol>li).eq((this).index()):ol下第$(this).index()索引位置的li
addClass(‘active’):给选项卡体(ol)的li添加classname(active)
siblings():找到ol下的li的所有兄弟
removeClass(‘active’):移除所有兄弟的classname(active)`
下面是一个移入移除的选项卡:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
    * {
        padding: 0;
        margin: 0;
        list-style: none;
    }
    
    body,
    html {
        width: 100%;
        height: 100%;
    }
    
    div {
        margin: 0 auto;
        margin-top: 150px;
        width: 400px;
        height: 80px;
        border: 2px solid black;
    }
    
    ul {
        width: 400px;
        height: 80px;
        display: flex;
    }
    
    ul>li {
        height: 80px;
        width: 100px;
        border: 1px solid black;
        flex: 1;
        font-size: 30px;
        background-color: skyblue;
        text-align: center;
        line-height: 80px;
    }
    
    ol {
        width: 400px;
        height: 400px;
        position: relative;
        margin-left: -2px;
    }
    
    ol>li {
        width: 400px;
        height: 400px;
        border: 2px solid black;
        position: absolute;
        font-size: 50px;
        background-color: purple;
        text-align: center;
        line-height: 400px;
        margin-top: -483px;
        transition: 2s;
        display: none;
    }
    
    .active {
        display: block;
        transform: translateY(483px);
    }
    
    .active:hover {}
    
    .active1 {
        background-color: red;
    }
    
    span {
        display: block;
        width: 100px;
        height: 100px;
        background-color: red;
        position: relative;
    }
</style>

<body>
    <div>
        <ul>
            <li>1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
        </ul>
        <ol>
            <li>1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
        </ol>
        <span></span>
    </div>
    <script src="../JQ/jquery.js"></script>
    <script>
        $('ul>li').mousemove(function() {//选项卡头的移入事件
            $('ul>li').eq($(this).index()).addClass('active1').siblings().removeClass('active1')
            $('ol > li').eq($(this).index()).addClass('active').siblings().removeClass('active')
        })

        $('li').mouseout(function() {//在移出卡头和卡体的事件
            $('ul > li').eq($(this).index()).removeClass('active1')
            $('ol > li').eq($(this).index()).removeClass('active')
        })
        $('ol > li').mousemove(function() {//给卡体li另外设置一个移入事件,在从卡头移入至卡体的时候,卡体不消失,大体架构与一些网页的导航栏类似。
            $('ol>li').eq($(this).index()).addClass('active').siblings().removeClass('active')
        })
    </script>
</body>

</html>`

本文地址:https://blog.csdn.net/weixin_51959098/article/details/110160728