我的编程空间,编程开发者的网络收藏夹
学习永远不晚

JavaScript实现抽奖器效果

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

JavaScript实现抽奖器效果

本文实例为大家分享了JavaScript实现抽奖器效果的具体代码,供大家参考,具体内容如下

这次实现的效果如下图:

所实现的功能是:当每次点击中间的抽奖按钮时,会随机选择一个盒子作为抽奖的结果。

那我们要如何实现抽奖的功能呢?

其实很简单,首先用html和css做出整体的框架,然后用js在中间按钮的onclick函数中设置定时器+随机改变某一盒子的背景颜色就可以了。 下面我们来讨论一下细节的方面:

1、设计整体框架时,我们需要为每个盒子设置边框,这时会发现边框会出现重叠问题,导致边框变厚,解决的方法是:设置margin-rightmargin-bottom负值(值等于边框值)。

2、.在js中设置抽奖功能时,我们可以通过设置一个定时器A,在其中随机改变某一盒子的background-color代表选中。为使抽奖可以在某一时刻暂停,我们可以设置定时器B,在某一时刻将定时器A关闭。

3、随机改变是怎么做到的呢? 首先调用document.getElementsByTagName获取所有盒子,然后利用Math.random()*盒子的数目,获取某一盒子下标,改变其背景颜色。

很显然定时器A是setInterval,定时器B是setTimeout

而且在A中改变某一盒子背景颜色时,要将上一个被改变颜色的盒子还原为原来的颜色,我们需要记录上次被改变背景颜色的盒子。

具体见下面代码:


<!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;
        }
        .container{
            width: 400px;
            height: 400px;
            margin:50px auto;
        }
        span,#main{
            display: block;
            width: 100px;
            height: 100px;
            border:2px pink solid;
            float:left;
            margin-left:-2px;
            margin-bottom:-2px;
            text-align: center;
            line-height: 100px;
            border-radius: 16px;
            box-shadow: 2px 2px 3px rgba(226, 86, 109, 0.459);
        }
        #main{
            background-color: rgba(243, 97, 126, 0.651);
            cursor: pointer;
        }
    </style>
</head>
<body>
    <div class="container">
        <div>
            <span>可视化</span>
            <span>图形学</span>
            <span>操作系统</span>
        </div>
        <div>
            <span>乐事</span>
            <div id="main">抽奖</div>
            <span>大白兔</span>
        </div>
        <div>
            <span>柠檬水</span>
            <span>黑咖啡</span>
            <span>芋泥奶茶</span>
        </div>
    </div>
    <script>
        let main=document.getElementById("main");
        let box=document.getElementsByTagName("span");
        var num=null;
        main.onclick=function(){
            let tem=setInterval(() => {
                if(num!==null){
                    box[num].style.backgroundColor="white";
                }
                num=parseInt(Math.random()*8);
                box[num].style.backgroundColor="rgba(243, 97, 126, 0.651)";
                console.log(num);
            }, 120);

            setTimeout(() => {
                clearInterval(tem)
            }, 3000);
        }
    </script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

JavaScript实现抽奖器效果

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Unity怎么实现老虎机滚动抽奖效果

小编给大家分享一下Unity怎么实现老虎机滚动抽奖效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!直接看下效果图吧:制作思路:设计四张图片,五个点,每个图片同时
2023-06-14

iOS实现新年抽奖转盘效果的思路

临近春节,相信不少app都会加一个新的需求——新年抽奖 不多废话,先上GIF效果图 DEMO链接 1. 跑马灯效果2. 抽奖效果实现步骤: 一、跑马灯效果 其实很简单,就是通过以下两张图片,用NSTimer无限替换,达到跑马灯的效果实现代码
2022-05-24

如何利用css实现一个抽奖动画效果

这篇文章将为大家详细讲解有关如何利用css实现一个抽奖动画效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。首先我们先来看下最终的运行效果:从效果图我们可以看到,抽奖会自动进行,并显示中奖信息。这个效果基
2023-06-07

基于JavaScript实现轮盘抽奖功能

对于有选择困难症的朋友来说,有个转盘抽奖功能再好不过了,今天通过本文给大家分享基于Js实现轮盘抽奖功能,感兴趣的朋友一起看看吧
2023-01-13

JavaScript怎么实现简单抽奖系统

这篇文章主要讲解了“JavaScript怎么实现简单抽奖系统”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript怎么实现简单抽奖系统”吧!模拟实现抽奖系统前端使用JavaScr
2023-06-29

php如何实现抽奖

这篇文章主要介绍“php如何实现抽奖”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php如何实现抽奖”文章能帮助大家解决问题。php实现抽奖的方法:1、创建一个php示例文件;2、定义奖池拥有的奖品
2023-07-04

原生JavaScript怎么实现九宫格抽奖

本文小编为大家详细介绍“原生JavaScript怎么实现九宫格抽奖”,内容详细,步骤清晰,细节处理妥当,希望这篇“原生JavaScript怎么实现九宫格抽奖”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。思路:通过
2023-07-02

iOS实现抽屉效果

本文实例为大家分享了iOS实现抽屉效果的具体代码,供大家参考,具体内容如下 抽屉效果:#import "DragerViewController.h"#define screenW [UIScreen mainScreen].bounds.
2022-05-18

编程热搜

目录