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:以前写的xmlhttp池,代码
May 18 Javascript
非主流的textarea自增长实现js代码
Dec 20 Javascript
JavaScript中的比较操作符&gt;、=、
Dec 31 Javascript
js中函数声明与函数表达式
Jun 03 Javascript
JavaScript判断undefined类型的正确方法
Jun 30 Javascript
jquery判断对象是否为空并遍历对象的简单实例
Jul 26 Javascript
Javascript中内建函数reduce的应用详解
Oct 20 Javascript
js实现短信发送倒计时功能(正则验证)
Feb 10 Javascript
关于vue.js发布后路径引用的问题解决
Aug 15 Javascript
微信小程序全局变量功能与用法详解
Jan 22 Javascript
Ant Design的Table组件去除
Oct 24 Javascript
Vue 解决在element中使用$notify在提示信息中换行问题
Nov 11 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
我的论坛源代码(六)
2006/10/09 PHP
简单谈谈php延迟静态绑定
2016/01/26 PHP
PHP匿名函数和use子句用法实例
2016/03/16 PHP
php使用高斯算法实现图片的模糊处理功能示例
2016/11/11 PHP
PHP/HTML混写的四种方式总结
2017/02/27 PHP
php批量转换文件夹下所有文件编码的函数类
2017/08/06 PHP
php实现的mongoDB单例模式操作类
2018/01/20 PHP
Laravel框架中集成MongoDB和使用详解
2019/10/17 PHP
关于JavaScript的面向对象和继承有利新手学习
2013/01/11 Javascript
使用JavaScript实现网页版Pongo设计思路及源代码分享
2014/06/16 Javascript
js库Modernizr的介绍和使用
2015/05/07 Javascript
基于JavaScript实现智能右键菜单
2016/03/02 Javascript
原生JS实现风箱式demo,并封装了一个运动框架(实例代码)
2016/07/22 Javascript
Node.js与MySQL交互操作及其注意事项
2016/10/05 Javascript
详解nodeJs文件系统(fs)与流(stream)
2018/01/24 NodeJs
python实现井字棋游戏
2020/03/30 Python
Python中如何获取类属性的列表
2016/12/26 Python
python安装cx_Oracle模块常见问题与解决方法
2017/02/21 Python
python实现回旋矩阵方式(旋转矩阵)
2019/12/04 Python
Pytorch损失函数nn.NLLLoss2d()用法说明
2020/07/07 Python
python连接mysql数据库并读取数据的实现
2020/09/25 Python
python中的测试框架
2020/11/13 Python
想学画画?python满足你!
2020/12/24 Python
Jar包的作用是什么
2014/03/30 面试题
Ruby如何实现动态方法调用
2012/11/18 面试题
高中微机老师自我鉴定
2014/02/16 职场文书
平面设计求职信
2014/03/10 职场文书
施工安全生产承诺书
2014/05/23 职场文书
八一建军节演讲稿
2014/09/10 职场文书
区长工作作风个人整改措施
2014/10/01 职场文书
2014年残联工作总结
2014/11/21 职场文书
2016年圣诞节寄语(一句话)
2015/12/07 职场文书
中国古代史学名著《战国策》概述
2019/08/09 职场文书
自从在 IDEA 中用了热部署神器 JRebel 之后,开发效率提升了 10(真棒)
2021/06/26 Java/Android
Vue自定义铃声提示音组件的实现
2022/01/22 Vue.js
MySQL 数据库范式化设计理论
2022/04/22 MySQL