全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

慕课网题目之js实现抽奖系统功能

本文实例为大家分享了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 


相关文章: 简历在线制作网站免费,免费下载个人简历的网站是哪些?  单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?  个人网站制作流程图片大全,个人网站如何注销?  简历在线制作网站免费版,如何创建个人简历?  如何通过.red域名打造高辨识度品牌网站?  七夕网站制作视频,七夕大促活动怎么报名?  建站10G流量真的够用吗?如何应对访问高峰?  江苏网站制作公司有哪些,江苏书法考级官方网站?  建站主机选购指南与交易推荐:核心配置解析  如何高效配置IIS服务器搭建网站?  内网网站制作软件,内网的网站如何发布到外网?  定制建站如何定义?其核心优势是什么?  独立制作一个网站多少钱,建立网站需要花多少钱?  如何将凡科建站内容保存为本地文件?  已有域名和空间如何快速搭建网站?  如何零基础开发自助建站系统?完整教程解析  香港网站服务器数量如何影响SEO优化效果?  Android自定义控件实现温度旋转按钮效果  定制建站价位费用解析与套餐推荐全攻略  如何在IIS7中新建站点?详细步骤解析  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  深圳网站制作案例,网页的相关名词有哪些?  建站之星与建站宝盒如何选择最佳方案?  装修招标网站设计制作流程,装修招标流程?  网站制作大概多少钱一个,做一个平台网站大概多少钱?  专业公司网站制作公司,用什么语言做企业网站比较好?  代刷网站制作软件,别人代刷火车票靠谱吗?  代购小票制作网站有哪些,购物小票的简要说明?  视频网站制作教程,怎么样制作优酷网的小视频?  如何通过主机屋免费建站教程十分钟搭建网站?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  魔方云NAT建站如何实现端口转发?  图册素材网站设计制作软件,图册的导出方式有几种?  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  ,如何利用word制作宣传手册?  如何在阿里云购买域名并搭建网站?  广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?  建站之星如何防范黑客攻击与数据泄露?  微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?  如何选择最佳自助建站系统?快速指南解析优劣  音乐网站服务器如何优化API响应速度?  建站主机如何安装配置?新手必看操作指南  如何快速辨别茅台真假?关键步骤解析  如何通过cPanel快速搭建网站?  如何在万网开始建站?分步指南解析  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?  如何在服务器上配置二级域名建站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。