本文实例为大家分享了js实现抽奖系统功能的具体代码,供大家参考,具体内容如下

要求实现功能:
1.点击左侧按键,开始抽奖,点击右侧按键,停止抽奖;
2.敲击回车键,开始抽奖,再次敲击回车键,停止抽奖;
3.开始抽奖后,左侧按钮变色;
html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>抽奖</title>
<link rel="stylesheet" href="style.css">
<script src="eventUtil.js"></script>
<script src="js.js"></script>
</head>
<body>
<div class="box">
<div id="header">开始抽奖啦!</div>
<div id="btn">
<span id="start">开始</span>
<span id="stop">结束</span>
</div>
</div>
</body>
</html>
css:
body{
margin: 0;
padding: 0;
}
.box{
width: 400px;
height: 200px;
border: 1px solid #0C4E7C;
margin: 0 auto;
}
#header{
color:darkred;
font-size: 24px;
text-align: center;
width: 400px;
height: 60px;
line-height: 60px;
}
#btn{
width: 200px;
overflow: hidden;
margin: 30px auto 0;
}
#btn span{
cursor: pointer;
border: 2px solid #a09a09;
border-radius: 7px;
margin-right: 10px;
color: #000;
display: inline-block;
height: 40px;
width: 80px;
background-color: #f2ec55;
line-height: 40px;
text-align: center;
}
JavaScript:
js.js:
var date = ["谢谢参与", "谢谢参与", "谢谢参与", "50元话费", "ipad", "佳能相机", "苹果手机", "3DS", "switch", "1000元超市购物卡"];
var timer = null;
var flag = 0;
window.onload = function () {
// var header = document.getElementById("header");优化前
var start = document.getElementById("start");
var stop = document.getElementById("stop");
//鼠标抽奖
eventUtil.addHandler(start, "click", getStart);
eventUtil.addHandler(stop, "click", getStop);
//键盘抽奖;
document.onkeyup = function (event) {
var e = event || window.event;
//检测按键键值;
// console.log(e.keyCode);
if (e.keyCode === 13) {
if (flag === 0) {
getStart();
flag = 1;
} else {
getStop();
flag = 0;
}
}
};
function getStart() {
clearInterval(timer);
var header = document.getElementById("header");//优化后
timer = setInterval(function () {
//代码优化前
//var x = parseInt(Math.random()*10);
var random = Math.floor(Math.random() * date.length);
header.innerHTML = date[random];
}, 50);
start.style.backgroundColor = "#999";
flag = 1;
}
function getStop() {
clearInterval(timer);
start.style.backgroundColor = "#f2ec55";
flag = 0;
}
};
eventUtil.js
var eventUtil = {
getEvent:function (event) {
return event?event:window.event;
},
getType: function (event) {
return event.type;
},
getTarget:function (event) {
return event.target||event.srcElement;
},
//阻止冒泡
stopPropagation:function (event) {
if(event.stopPropagation){
event.stopPropagation();
}else {
event.cancelBubble=true;
}
},
//阻止事件默认行为;
preventDefault:function(event){
if(event.preventDefault){
event.preventDefault();
}else {
event.returnValue = false;
}
},
//添加具柄;
addHandler: function (element, type, Handler) {
if (element.ç) {
element.addEventListener(type, Handler, false);
} else if (element.attachEvent) {
element.attachEvent("on" + type, Handler);
} else {
element["on" + type] = Handler;
}
},
//删除具柄;
removeHandler: function (element, type, Handler) {
if (element.removeEventListener) {
element.removeEventListener(type, Handler, false);
} else if (element.detachEvent) {
element.detachEvent("on" + type, Handler);
} else {
element["on" + type] = null;
}
}
};
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js
# 抽奖系统
# 原生js实现简易抽奖系统
# JavaScript实现简单抽奖系统
# 基于JavaScript实现抽奖系统
# JavaScript-定时器0~9抽奖系统详解(代码)
# js组件SlotMachine实现图片切换效果制作抽奖系统
# 基于javascript实现简单的抽奖系统
# javascript实现可键盘控制的抽奖系统
# 用Javascript轻松制作一套简单的抽奖系统
# js实现简单的抽奖系统
# 回车键
# 佳能
# 鼠标
# 大家分享
# 话费
# 具体内容
# 大家多多
# 键值
# px
# width
# padding
# border
# solid
# height
# header
# btn
# box
# id
# stop
# margin
相关文章:
安徽网站建设与外贸建站服务专业定制方案
简易网站制作视频教程,使用记事本编写一个简单的网页html文件?
C++如何编写函数模板?(泛型编程入门)
如何在VPS电脑上快速搭建网站?
建站主机与服务器功能差异如何区分?
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
东莞专业制作网站的公司,东莞大学生网的网址是什么?
如何在建站之星网店版论坛获取技术支持?
教学网站制作软件,学习*后期制作的网站有哪些?
已有域名如何免费搭建网站?
Android滚轮选择时间控件使用详解
如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法
如何快速搭建支持数据库操作的智能建站平台?
如何通过免费商城建站系统源码自定义网站主题与功能?
详解jQuery中基本的动画方法
高端网站建设与定制开发一站式解决方案 中企动力
建站之星2.7模板:企业网站建设与h5定制设计专题
上海网站制作开发公司,上海买房比较好的网站有哪些?
建站OpenVZ教程与优化策略:配置指南与性能提升
广东企业建站网站优化与SEO营销核心策略指南
c# Task.ConfigureAwait(true) 在什么场景下是必须的
Python文件管理规范_工程实践说明【指导】
如何在万网自助建站平台快速创建网站?
中山网站制作网页,中山新生登记系统登记流程?
如何快速搭建高效可靠的建站解决方案?
微信小程序制作网站有哪些,微信小程序需要做网站吗?
ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?
如何通过可视化优化提升建站效果?
整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?
建站168自助建站系统:快速模板定制与SEO优化指南
php json中文编码为null的解决办法
如何在云主机上快速搭建网站?
合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?
制作网站外包平台,自动化接单网站有哪些?
,石家庄四十八中学官网?
网站专业制作公司有哪些,做一个公司网站要多少钱?
网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?
h5网站制作工具有哪些,h5页面制作工具有哪些?
如何通过NAT技术实现内网高效建站?
建站之星后台管理系统如何操作?
如何选择PHP开源工具快速搭建网站?
定制建站是什么?如何实现个性化需求?
如何通过二级域名建站提升品牌影响力?
微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
香港服务器租用费用高吗?如何避免常见误区?
小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
*请认真填写需求信息,我们会在24小时内与您取得联系。