javascript实现可键盘控制的抽奖系统


Posted in Javascript onMarch 10, 2016

制作一个简易的抽奖系统!欢迎大家学习!

javascript实现可键盘控制的抽奖系统

JS原理:建立一个数组用来存储抽奖内容,例如 iphone6 等,当点击开始的时候,开启定时器,产生一个随机数,把对应文本的innerHTML改成数组所对应的内容。

如果想让某个抽奖几率变高,可以让数组中某个值重复次数多点。接下来看代码。、

JavaScript代码

window.onload = function(){
  var data = [
    "iphone 6s plus",
    "苹果Mac 笔记本",
    "美的洗衣机",
    "凌美钢笔",
    "谢谢参与",
    "索尼入耳式耳机",
    "雷柏机械键盘",
    "《javaScript高级程序设计》",
    "精美保温杯",
    "维尼小熊一只",
    "500元中国石化加油卡",
    "爱奇艺年费会员",
    "iPad mini",
    "32G U盘",
  ];
  var bStop = true;
  var timer = null;
  var btns = document.getElementById('btns').getElementsByTagName('span');
  var text = document.getElementById('text');

  btns[0].onclick = start;
  btns[1].onclick = stop;

  document.onkeyup = function(event){
    event = event||window.event;
    if(event.keyCode==13){
      if(bStop){
        start();
      }else {
        stop();
      }
    }
  }

  function start(){
    clearInterval(timer);
    timer = setInterval(function(){
      var r = Math.floor(Math.random()*data.length);
      text.innerHTML = data[r];
    },20);
    btns[0].style.background = '#666';
    bStop = false;
  }

  function stop(){
    clearInterval(timer);
    btns[0].style.background = 'blue';
      bStop = true;
    
  }
}

html css 代码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>抽奖啦</title>
  <style>
    * {
      margin: 0;
      padding:0;
    }
    #container {
      width: 500px;
      height: 200px;
      margin: 100px auto;
      background: red;
      position: relative;
      padding-top: 20px;
    }
    #container p {
      position: absolute;
      bottom: 4px;
      left: 30px;
    }
    #btns {
      position: absolute;
      left: 118px;
      bottom: 30px;
    }
    #container h1 {
      color: #fff;
      text-align: center;
    }
    #btn-start,#btn-stop {
      width: 100px;
      height: 60px;
      background: blue;
      text-align: center;
      line-height: 60px;
      font-size: 20px;
      display: inline-block;
      color: #fff;
      margin-right: 60px;
      border-radius: 10px;
      cursor: pointer;
    }
  </style>
  <script src="index.js"></script>
</head>
<body>
  <div id="container">
    <h1 id="text">iphone 6s plus</h1>
    <p>小提示:您可以按下Enter键来控制开始暂停,祝您中大奖哟</p>
    <div id="btns">
      <span id="btn-start">开始</span>
      <span id="btn-stop">停止</span>
    </div>
  </div>
</body>
</html>

希望本文所述对大家的学习有所帮助,轻松实现抽奖系统。

Javascript 相关文章推荐
js获取时间(本周、本季度、本月..)
Nov 22 Javascript
jQuery中:password选择器用法实例
Jan 03 Javascript
javascript清空table表格的方法
May 14 Javascript
css如何让浮动元素水平居中
Aug 07 Javascript
JS+Canvas绘制时钟效果
Aug 20 Javascript
用Vue.js实现监听属性的变化
Nov 17 Javascript
Bootstrap CSS布局之表格
Dec 17 Javascript
详解基于webpack搭建react运行环境
Jun 01 Javascript
微信小程序 监听手势滑动切换页面实例详解
Jun 15 Javascript
响应式框架Bootstrap栅格系统的实例
Dec 19 Javascript
angularjs中$http异步上传Excel文件方法
Feb 23 Javascript
浅谈webpack SplitChunksPlugin实用指南
Sep 17 Javascript
基于javascript制作微信聊天面板
Aug 09 #Javascript
关于Bootstrap弹出框无法调用问题的解决办法
Mar 10 #Javascript
TypeScript Type Innference(类型判断)
Mar 10 #Javascript
JavaScript File分段上传
Mar 10 #Javascript
ES6中非常实用的新特性介绍
Mar 10 #Javascript
ES6的新特性概览
Mar 10 #Javascript
JavaScript字符串常用的方法
Mar 10 #Javascript
You might like
精致的人儿就要挑杯子喝咖啡
2021/03/03 冲泡冲煮
浅谈PHP强制类型转换,慎用!
2013/06/06 PHP
浅谈PHP定义命令空间的几个注意点(推荐)
2016/10/29 PHP
关于PHP中协程和阻塞的一些理解与思考
2017/08/11 PHP
FireFox与IE 下js兼容触发click事件的代码
2008/11/20 Javascript
Javascript String对象扩展HTML编码和解码的方法
2009/06/02 Javascript
fireworks菜单生成器mm_menu.js在 IE 7.0 显示问题的解决方法
2009/10/20 Javascript
JQuery中getJSON的使用方法
2010/12/13 Javascript
鼠标放在图片上显示大图的JS代码
2013/03/26 Javascript
JavaScript对象学习经验整理
2013/10/12 Javascript
jquery submit ie6下失效的原因分析及解决方法
2013/11/15 Javascript
easyui datagrid 键盘上下控制选中行示例
2014/03/31 Javascript
jQuery插件学习教程之SlidesJs轮播+Validation验证
2016/07/12 Javascript
在Docker快速部署Node.js应用的详细步骤
2016/09/02 Javascript
Angularjs根据json文件动态生成路由状态的实现方法
2017/04/17 Javascript
JS实现给json数组动态赋值的方法示例
2020/03/19 Javascript
详解使用vscode+es6写nodejs服务端调试配置
2017/09/21 NodeJs
详解Vue2 SSR 缓存 Api 数据
2017/11/20 Javascript
详解Angular结合zTree异步加载节点数据
2018/01/20 Javascript
深入理解vue中slot与slot-scope的具体使用
2018/01/26 Javascript
python3使用urllib示例取googletranslate(谷歌翻译)
2014/01/23 Python
python有证书的加密解密实现方法
2014/11/19 Python
Python实现统计单词出现的个数
2015/05/28 Python
Python 获得13位unix时间戳的方法
2017/10/20 Python
Python中 map()函数的用法详解
2018/07/10 Python
python批量下载网站马拉松照片的完整步骤
2018/12/05 Python
django 实现celery动态设置周期任务执行时间
2019/11/19 Python
django 实现简单的插入视频
2020/04/07 Python
英国折扣高尔夫商店:Discount Golf Store
2019/11/19 全球购物
Vrbo西班牙:预订您的度假公寓(公寓、乡村房屋…)
2020/04/27 全球购物
总经理任命书
2014/03/29 职场文书
通信工程专业求职信
2014/06/04 职场文书
防灾减灾宣传标语
2014/10/07 职场文书
夫妻忠诚协议书范本
2014/11/17 职场文书
2016父亲节感恩话语
2015/12/09 职场文书
2019最新版火锅店的创业计划书 !
2019/07/12 职场文书