html css js 编程简单实现 随机抽奖 练习小项目

我们经常在某些网站上 看到一些 抽奖的活动,比如大转盘 随机抽奖

这种抽奖程序是怎么实现的呢?下面分享一个代码 简单的 实现了一下 随机抽奖的逻辑

对于网页的 美观度 就不分享了 主要是分享 js怎么 随机的 让 奖品滚顶起来 然后 某个节点

停止滚动 从而 实现中奖 奖品

bash 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
    <h1>随机抽奖小练习</h1>
<p id="a">奖品</p>
<button onclick="ad()">开始抽奖</button>
<button onclick="a()">停。。。</button>
</body>
<script type="text/javascript">
function add(){
        var dm=["一等奖:大彩电",'二等奖:小彩电','三等奖:吹风机','四等奖:小电风扇','五等奖:塑料杯','谢谢惠顾'];
        var dc=parseInt(Math.random()*dm.length);
        document.getElementById('a').innerHTML=dm[dc];
}
let td=null
function ad(){
   if(td){
    a(td)
   }
 td=window.setInterval(add,100);
}
function a(){
      window.clearInterval(td);
}
</script>
</html>

有刚刚学习编程的兄弟们 可以 尝试写一写

更多项目练习例子分享:https://wwwoop.com/?typeParam=2

相关推荐
Lee川13 小时前
深度解构JavaScript:作用域链与闭包的内存全景图
javascript·面试
_Eleven14 小时前
Pinia vs Vuex 深度解析与完整实战指南
前端·javascript·vue.js
技术狂小子14 小时前
# 一个 Binder 通信中的多线程同步问题
javascript·vue.js
进击的尘埃14 小时前
Service Worker + stale-while-revalidate:让页面"假装"秒开的那些事
javascript
秋水无痕15 小时前
从零搭建个人博客系统:Spring Boot 多模块实践详解
前端·javascript·后端
进击的尘埃15 小时前
基于 Claude Streaming API 的多轮对话组件设计:状态机与流式渲染那些事
javascript
juejin_cn15 小时前
[转][译] 从零开始构建 OpenClaw — 第六部分(持久化记忆)
javascript
juejin_cn16 小时前
[转][译] 从零开始构建 OpenClaw — 第七部分(子智能体系统)
javascript
an3174217 小时前
解决 VSCode 中 ESLint 格式化不生效问题:新手也能看懂的配置指南
前端·javascript·vue.js
Lee川19 小时前
🚀《JavaScript 灵魂深处:从 V8 引擎的“双轨并行”看执行上下文的演进之路》
javascript·面试