随机点名(HTML,CSS,JS)

随机点名原理:

1.新建一个数组,把需要点名的名单放到一个数组里面

2.遍历数组

3.创建一个随机数,作为数组的下标,随机数最大值为数组长度,最小值为零

4.利用计时器,每隔一段时间生成一个随机数

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .box{
            width: 500px;
            height: 500px;
            margin: 0 auto;
            background-color: salmon;
        }
        .box .box1{
            width: 100%;
            height: 100px;
            background-color: seagreen;
            display: flex;
            justify-content: space-around;
            align-items: center;
        }
        .box .box1 button{
            width: 100px;
            height: 50px;
            background-color: saddlebrown;
            font-size: 30px;
            text-align: center;
            line-height: 50px;
        }
        .box .mz{
            width: 200px;
            height: 200px;
            margin: 100px auto;
            font-size: 50px;
            text-align: center;
            line-height: 200px;
            background-color: blueviolet
            
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="box1">
            <button>开始</button>
            <button>停止</button>
        </div>
        <div id="mz" class="mz">张三</div>
    </div>
    <script>
        var arr = ['张三','李四','王二','麻子','小明','小李','校长','大哥','小弟'];
        var btn = document.getElementsByTagName("button");
        var mz = document.getElementById("mz");
        mz.innerHTML = arr[0];
        var timer = null;
        btn[0].onclick = function(){
            timer = setInterval(function(){
                var random = Math.round(Math.random() * arr.length);
                mz.innerHTML = arr[random];
        }, 30)
        }
        btn[1].onclick = function(){
            clearInterval(timer);
        }
    </script>
</body>
</html>

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的 HTML 示例,可以实现固定名单随机点名,并且每次点名时会播放动画效果: ```html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>随机点名</title> <style> @keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } .box { display: inline-block; margin: 10px; padding: 10px; border: 1px solid #ccc; border-radius: 5px; animation: rotate 2s linear infinite; } </style> </head> <body> <h1>随机点名</h1> <p>点击下面的按钮,随机从名单中选择一个人,并播放动画效果。</p> <div id="nameList"> <div class="box">小明</div> <div class="box">小红</div> <div class="box">小刚</div> <div class="box">小李</div> <div class="box">小张</div> </div> <button onclick="randomSelect()">点名</button> <script> function randomSelect() { var nameList = document.getElementById("nameList").children; var selected = Math.floor(Math.random() * nameList.length); for (var i = 0; i < nameList.length; i++) { if (i == selected) { nameList[i].classList.add("selected"); } else { nameList[i].classList.remove("selected"); } } } </script> </body> </html> ``` 在上述代码中,我们首先定义了一个旋转动画效果,通过 `@keyframes` 和 `animation` 属性来实现。然后,我们定义了一个名为 `box` 的 CSS 类,用于样式化每个名字的盒子。这里我们设置了边框、圆角、内边距和动画效果。 在 HTML 中,我们创建了一个名为 `nameList` 的 `div` 元素,并在其中添加了一些名字盒子。我们还创建了一个按钮,当用户点击该按钮时,会执行名为 `randomSelect()` 的 JavaScript 函数。 `randomSelect()` 函数会先获取名为 `nameList` 的 div 元素的所有子元素,并计算出一个随机数,表示在名字列表中选择哪一个。然后,它会遍历每个名字盒子,并将选中的盒子添加 `selected` 类,从而触发动画效果。其他名字盒子则会移除 `selected` 类,使其回到原始状态。 这是一个简单的示例,可以根据需要进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值