jquery通过setInterval实现按钮的轮播点击效果_项目开发
在项目开发中,需要实现按钮的定时轮播,却发现要引入一个JS轮播插件,需要“大动干戈”。于是,写了个简单的按钮轮播。

CSS样式表

        body {
            margin: 0;
            padding: 0;
        }

        .panel {
            width: 300px;
            height: 300px;
            line-height: 300px;
            background-color: rgba(0, 0, 0, .7);
            margin: 10px auto;
            text-align: center;
        }

        span {
            width: 60px;
            height: 25px;
            line-height: 25px;
            display: inline-block;
            background: #00b7ee;
            border-radius: 5px;
            margin: 5px 10px;
            padding: 5px;
            color: #fff;
            font-size: 14px;
            text-align: center;
            cursor: pointer;
        }

        .active {
            background-color: #ff0033;
        }

HTML

<div class="panel">
    <span id="btn0">年统计</span>
    <span id="btn1">月统计</span>
    <span id="btn2">日统计</span>
</div>

JS轮播

    $(function () {
        var t = 0;
        var timer = setInterval(function () {

            //获取span的长度;
            var l = $('.panel span').length;

            //返回;
            if (t == l) {
                t = 0;
            }

            //DOM操作;
            $("#btn" + t).prevAll().removeClass("active");//同级之前全部的元素;
            $("#btn" + t).addClass("active");//当前元素;
            $("#btn" + t).nextAll().removeClass("active");//同级之后全部的元素;

            t++;
        }, 3000)
    })

Done!