JS 实现双色球摇奖效果

代码:

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        button {
            font-size: 20px;
            padding: 5px 30px;
            margin-left: 20px;
        }

        span {
            width: 100px;
            height: 100px;
            border-radius: 50px;
            background-color: red;
            display: inline-block;
            margin-top: 30px;
            margin-left: 20px;
            color: white;
            font-size: 40px;
            text-align: center;
            line-height: 100px;
        }
    </style>
</head>

<body>
    <!--  -->
    <button>开始</button>
    <button>停止</button>
    <br>
    <span id="aaa"></span>
    <span></span>
    <span></span>
    <span></span>
    <span></span>
    <span></span>
    <span style="background-color: #06c;"></span>
    <script>
        //1.获取元素
        var btns = document.getElementsByTagName("button");
        var spans = document.getElementsByTagName("span");
        //4.声明一个变量 用来记录 当前要停止的小球的索引
        var n = 0;

        var timer = null;
        //2.点击 开始 让所有小球中的内容 进行自动切换
        btns[0].onclick = function () {
            //0-30
            timer = setInterval(function () {
                //切换一次的代码
                for (var i = n; i < spans.length; i++) {
                    var ran = parseInt(Math.random() * 31);
                    spans[i].innerText = ran;
                }
            }, 50)
        }
        //3.点击 停止按钮  让正在切换的第一个小球停下来
        btns[1].onclick = function () {
            setTimeout(function () {
                n++;//1 2   
                //1.当全部停止之后 要清除定时器
                if(n>=7){
                    clearInterval(timer);
                    n = 0;//2.在停止之后  可以重新开始的
                }
            }, 500)

        }
    </script>
</body>

</html>
原文地址:https://www.cnblogs.com/shihaiying/p/13683815.html