使用JS来实现随机点名的效果

这篇具有很好参考价值的文章主要介绍了使用JS来实现随机点名的效果。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

今天我们来做一个比较简单的JS点名效果,先把HTML和css给准备好,然后我们开始写JS结构

HTML

<h2>随机点名</h2>

    <div class="box">

        <span>名字是:</span>

        <div class="qs">这里显示姓名</div>

    </div>

    <div class="btns">

        <button class="start">开始</button>

        <button class="end">结束</button>

    </div>

CSS

 * {

            margin: 0;

            padding: 0;

        }

        h2 {

            text-align: center;

        }

        .box {

            width: 600px;

            margin: 50px auto;

            display: flex;

            font-size: 25px;

            line-height: 40px;

        }

        .qs {

            width: 450px;

            height: 40px;

            color: red;

        }

        .btns {

            text-align: center;

        }

        .btns button {

            width: 120px;

            height: 35px;

            margin: 0 50px;

        }

JS结构首先分析点名事件三个事情,第一个是事件源,第二个点击事件的程序

第三个就是事件的结果

首先我们需要定义一个数组

比如我这里定义五个数组

  const arr = ['马超', '黄忠', '赵云', '关羽', '张飞']

然后第一步我们开始模块按钮

首先我们需要获取两个按钮,一个开始,一个结束

const qs=document.querySelector('.qs')

const start=document.querySelector('.start')

然后我们获取开始按钮对象

addEventListene是监听事件的按钮,然后后面的click是事件,就是点击这个按钮就会执行下面的随机数的方法

这里我们在这里写一个timeid是指这个事件的按钮,所以我们要在首页去定义二个变量

let random=0

 let timerId=0

 start.addEventListener('click',function(){

   

           timerId=setInterval(function(){

             random=parseInt(Math.random()*arr.length)

            qs.innerHTML=arr[random]

           }, 35)

第二步就是关闭按钮,我们筛选完之后需要关闭然后删除抽取的元素

 const end=document.querySelector('.end')

        end.addEventListener('click',function(){

            clearInterval(timerId)

            //结束了,删掉当前抽取的元素

            arr.splice(random,1)

            console.log(arr)

arr.splice(random,1):意思就是这个事件结束了删掉这个随机数的一个元素

clearInterva:关闭定时器的意思,因为我们做一个点名事件是需要通过定时器来完成,这里的意思是停止的意思

最后我们在加一个步骤

if(arr.length===1){

            start.disabled=end.disabled=true

           }

这里的意思是这个素组如果只剩下一个元素,那么就会禁用开始和停止这两个按钮,如果换是flase就可以继续使用

接下来是源码文章来源地址https://www.toymoban.com/news/detail-473622.html

<!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>
        * {
            margin: 0;
            padding: 0;
        }
 
        h2 {
            text-align: center;
        }
 
        .box {
            width: 600px;
            margin: 50px auto;
            display: flex;
            font-size: 25px;
            line-height: 40px;
        }
 
        .qs {
 
            width: 450px;
            height: 40px;
            color: red;
 
        }
 
        .btns {
            text-align: center;
        }
 
        .btns button {
            width: 120px;
            height: 35px;
            margin: 0 50px;
        }
    </style>
</head>
 
<body>
    <h2>随机点名</h2>
    <div class="box">
        <span>名字是:</span>
        <div class="qs">这里显示姓名</div>
    </div>
    <div class="btns">
        <button class="start">开始</button>
        <button class="end">结束</button>
    </div>
 
    <script>
        // 数据数组
        let random=0
        let timerId=0
        const arr = ['马超', '黄忠', '赵云', '关羽', '张飞']
        //业务1开始模块按钮
        const qs=document.querySelector('.qs')
        const start=document.querySelector('.start')
        //1.1获取开始按钮对象
        start.addEventListener('click',function(){
            //1.获取随机数
           timerId=setInterval(function(){
             random=parseInt(Math.random()*arr.length)
            qs.innerHTML=arr[random]
           }, 35)
           if(arr.length===1){
            start.disabled=end.disabled=true
           }
        })
        //2.关闭按钮
        const end=document.querySelector('.end')
        end.addEventListener('click',function(){
            clearInterval(timerId)
            //结束了,删掉当前抽取的元素
            arr.splice(random,1)
            console.log(arr)
        })
    </script>
</body>
 
</html>

到了这里,关于使用JS来实现随机点名的效果的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HTML随机点名程序

    案例要求 1.点击点名按钮,名字界面随机显示,按钮文字由点名变为停止 2.再次点击点名按钮,显示当前被点名学生姓名,按钮文字由停止变为点名  案例源码 案例效果图

    2024年04月23日
    浏览(32)
  • 1-JavaScript 点击事件 随机点名器

    web前端JavaScript交互 ------ 点击事件 意义: JavaScript中的点击事件是指当用户在页面上点击某个元素时触发的事件。这个事件可以用于执行各种操作,如改变元素的样式、修改页面内容等。这是Web应用程序中最常用 的交互方式之一,允许用户与网页进行交互,提高用户体验。

    2024年02月08日
    浏览(42)
  • python|用列表做一个随机点名小程序

          上课时,老师会叫人回答问题,一些小伙伴非常害怕自己被点到, 于是,会找一些博主发的点名小程序代码,想着发给老师,让老师用,再把要点名的花名册做一下手脚 ,把自己名字删了,嘻嘻嘻。但,问题出就出在花名册!!!有些代码解析的文件格式必须是*.txt 或

    2024年02月14日
    浏览(45)
  • 基于unity+c#的随机点名系统(简单UI界面+列表+数组)

    目录 一、功能界面显示 二、UI 1、视频的使用 (1)渲染纹理 (2) 视频铺全屏 (3)视频的调用 2、 下拉文本框的使用(旧版) 3、输入文本框的使用(旧版) 4、更新Test文本和下拉文本框的内容 三、保存之前的记录 1、PlayerPrefs (1)保存数据: (2)读取数据: (3)删除

    2024年04月27日
    浏览(42)
  • 切水果游戏曾经是一款风靡手机的休闲游戏,今天要分享的就是一款网页版的切水果游戏, 由HTML+CSS+JS实现,虽然功能和原版的相差太大,但基本的功能具备,效果逼真。感兴趣的小伙伴可收藏学习(完整源码

    前言 切水果游戏曾经是一款风靡手机的休闲游戏,今天要分享的就是一款网页版的切水果游戏, 由HTML+CSS+JS实现,虽然功能和原版的相差太大,但基本的功能具备,效果逼真。感兴趣的小伙伴可收藏学习(完整源码在文末) 推荐学习专栏: Web前端 JavaWeb学习专栏 文章目录

    2024年02月03日
    浏览(42)
  • 使用Vue.js实现文字跑马灯效果

    实现文字跑马灯效果,首先用到 substring()截取 和 setInterval计时器 clearInterval()清除计时器 效果如下: 实现代码如下: 以上是实现文字跑马灯效果,如有不足的地方,欢迎在评论区留言。

    2023年04月19日
    浏览(58)
  • 使用JS来实现轮播图的效果

    最好今天分享一个使用JS制作的轮播图效果 个人名片:  😊 作者简介:一名大一在校生,web前端开发专业  🤡  个人主页:几何小超  🐼 座右铭:懒惰受到的惩罚不仅仅是自己的失败,还有别人的成功。  🎅**学习目标:  坚持每一次的学习打卡 ,学好前端 首先是HTML部分

    2024年01月20日
    浏览(49)
  • vue 项目使用three.js 实现3D看房效果

    0.前言 该教程能帮助直接写出vue项目的3D看房效果!!! 先上效果图 1.安装依赖 2.vue代码 这里文件名为three.vue 代码非原创,出处 vue3+threejs实现全景看房 (异步加载 BOLLROOM 部件为对原代码的修改) 注意这里的hdr 文件必须要放在assets文件夹中,且要通过import模块的形式导入!

    2024年02月13日
    浏览(56)
  • 今天我们将分享这些创新型人工智能产品。

    作者:禅与计算机程序设计艺术 “人工智能”一词已经被几代人用来形容科技的进步。从原始人类对智能机器的开发到达21世纪末,人工智能也渐渐成为各行各业不可或缺的一部分。那么,什么是真正的人工智能呢?下面我用通俗易懂的话来解释一下:“人工智能”指的是让

    2024年02月07日
    浏览(54)
  • 今天我们来浅谈一下ChatGPT到底是什么东西

    这是一篇非学术专业性的文章,而我也是为了解chatGPT而学了两三天人工智能,所以哪里写的不好的不对的地方还希望海涵。 图灵测试 1950年,人工智能之父艾伦·图灵提出乐“图灵测试”。就是说当你在不面对面的时候跟机器人进行文字聊天的时候,如果你很难分辨出来对方

    2023年04月09日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包