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 相关文章推荐
JavaScript中String和StringBuffer的速度之争
Apr 01 Javascript
style、 currentStyle、 runtimeStyle区别分析
Aug 01 Javascript
js中replace的用法总结
Dec 27 Javascript
用JavaScript实现一个代码简洁、逻辑不复杂的多级树
May 23 Javascript
jQuery中focus事件用法实例
Dec 26 Javascript
html的DOM中Event对象onabort事件用法实例
Jan 21 Javascript
js实现的简单radio背景颜色选择器代码
Aug 18 Javascript
基于Turn.js 实现翻书效果实例解析
Jun 20 Javascript
微信小程序开发(一) 微信登录流程详解
Jan 11 Javascript
koa上传excel文件并解析的实现方法
Aug 09 Javascript
vue 验证码界面实现点击后标灰并设置div按钮不可点击状态
Oct 28 Javascript
浅谈鸿蒙 JavaScript GUI 技术栈
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
php实现的mongodb操作类实例
2015/04/03 PHP
中高级PHP程序员应该掌握哪些技术?
2016/09/23 PHP
Jquery Select操作方法集合脚本之家特别版
2010/05/17 Javascript
javascript 进阶篇3 Ajax 、JSON、 Prototype介绍
2012/03/14 Javascript
Jquery中给animation加更多的运作效果实例
2013/09/05 Javascript
ff下JQuery无法监听input的keyup事件的解决方法
2013/12/12 Javascript
node.js实现多图片上传实例
2014/06/03 Javascript
谷歌浏览器不支持showModalDialog模态对话框的解决方法
2014/09/22 Javascript
node.js中的fs.renameSync方法使用说明
2014/12/16 Javascript
jquery序列化方法实例分析
2015/06/10 Javascript
jquery图片倾斜层叠切换特效代码分享
2015/08/27 Javascript
JS实现1000以内被3或5整除的数字之和
2016/02/18 Javascript
js动态设置select下拉菜单的默认选中项实例
2018/08/21 Javascript
微信小程序template模版的使用方法
2019/04/13 Javascript
Vue.js 无限滚动列表性能优化方案
2019/12/02 Javascript
动态实现element ui的el-table某列数据不同样式的示例
2021/01/22 Javascript
[01:06:07]2014 DOTA2国际邀请赛中国区预选赛5.21 DT VS CIS
2014/05/22 DOTA
python制作爬虫并将抓取结果保存到excel中
2016/04/06 Python
在CentOS上配置Nginx+Gunicorn+Python+Flask环境的教程
2016/06/07 Python
详解利用Python scipy.signal.filtfilt() 实现信号滤波
2019/06/05 Python
python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解
2020/02/11 Python
解决python Jupyter不能导入外部包问题
2020/04/15 Python
Python 抓取数据存储到Redis中的操作
2020/07/16 Python
python中pathlib模块的基本用法与总结
2020/08/17 Python
万宝龙英国官网:Montblanc手表、书写工具、皮革和珠宝
2018/10/16 全球购物
俄罗斯有趣和原创礼物网上商店:MagicMag
2019/08/01 全球购物
会计专业毕业生求职信分享
2014/01/03 职场文书
《鸟的天堂》教学反思
2014/02/27 职场文书
小学生家长寄语
2014/04/02 职场文书
水污染治理工程专业求职信
2014/06/14 职场文书
2014年有孩子的离婚协议书范本
2014/10/08 职场文书
2014年法院工作总结
2014/11/24 职场文书
2014年底个人工作总结
2015/03/10 职场文书
2015年爱国卫生工作总结
2015/04/22 职场文书
北京青年观后感
2015/06/15 职场文书
Python 语言实现六大查找算法
2021/06/30 Python