layui实现步骤条

这篇博客介绍了如何利用layui框架来实现一个步骤条的功能。通过HTML结构、CSS样式和JavaScript交互,详细展示了步骤条的创建过程,包括步骤条的布局、样式设定以及前进、后退按钮的事件处理,实现了步骤条的状态更新和视觉效果变化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<div class="layui-container">
    <div class="layui-row">
        <div class="layui-col-md12">
            <div class="layui-card">
                <div class="layui-card-header"></div>
                <div class="layui-card-body">
                    <div class="step-container">
                        <div id="step1"  class="step-item ">
                            <div  class="step-num">1</div>
                            <div class="step-text">步骤 1</div>
                        </div>
                        <div id="step2" class="step-item  ">
                            <div class="step-num">2</div>
                            <div class="step-text">步骤 2</div>
                        </div>
                    </div>
                    <div class="step-line"></div>
                    <div class="layui-btn-container">
                        <button class="layui-btn layui-btn-primary" id="prevBtn">上一步</button>
                        <button class="layui-btn" id="nextBtn">下一步</button>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

<style>
    .step-container {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 20px;
    }

    .step-item {
        position: relative;
        text-align: center;
        cursor: pointer;
    }

        .step-item .step-num {
            width: 30px;
            height: 30px;
            line-height: 30px;
            border-radius: 50%;
            background-color: #fff;
            border: 1px solid #ccc;
            margin-bottom: 5px;
        }

        .step-item .step-text {
            font-size: 14px;
        }

    .step-line {
        height: 2px;
        background-color: #ccc;
        margin-bottom: 20px;
        transition: width 0.3s ease;
    }

    .layui-btn-container {
        text-align: right;
    }
</style>

<script>
    $(document).ready(function () {
        var currentIndex = 0;
        var stepItems = $('.step-item');
        var stepLine = $('.step-line');

        // 初始化步骤条
        updateStep();

        // 上一步按钮点击事件
        $('#prevBtn').on('click', function () {
            if (currentIndex > 0) {
                currentIndex--;
                updateStep();
            }
        });

        // 下一步按钮点击事件.attr('class', "step - item layui - bg - blue layui - this");
        $('#nextBtn').on('click', function () {
            $('#step2')
            if (currentIndex < stepItems.length - 1) {
                currentIndex++;
                updateStep();
            }
        });

        // 步骤条点击事件
        stepItems.on('click', function () {
            currentIndex = $(this).index();
            updateStep();
        });

        // 更新步骤条状态
        function updateStep() {
            stepItems.each(function (index) {
                
                var stepId = $(this).attr('id');
                if (index === currentIndex) {
                    $('#' + stepId + " .step-num").attr('style', "background-color:cornflowerblue;color:white");
                } else {
                    $('#' + stepId + " .step-num").attr('style', "");
                }
            });
            stepLine.css('width', (currentIndex / (stepItems.length - 1) * 100) + '%');
        }
    });
</script>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值