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代码
Mar 05 Javascript
jquery 按钮状态效果 正常、移上、按下
Aug 12 Javascript
JS获取url链接字符串 location.href
Dec 23 Javascript
JavaScript获取网页中第一个链接ID的方法
Apr 03 Javascript
快速学习jQuery插件 jquery.validate.js表单验证插件使用方法
Dec 01 Javascript
10个JavaScript中易犯小错误
Feb 14 Javascript
基于JS实现无缝滚动思路及代码分享
Jun 07 Javascript
JavaScript动态检验密码强度的实现方法
Nov 09 Javascript
jQuery实现简单的抽奖游戏
May 05 jQuery
详解vue-cli 构建项目 vue-cli请求后台接口 vue-cli使用axios、sass、swiper
May 28 Javascript
Iview Table组件中各种组件扩展的使用
Oct 20 Javascript
vue自定义树状结构图的实现方法
Oct 18 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/01 无线电
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
php 文章调用类代码
2011/08/11 PHP
PHP人民币金额数字转中文大写的函数代码
2013/02/27 PHP
深入PHP许愿墙模块功能分析
2013/06/25 PHP
php中cookie的使用方法
2014/03/29 PHP
PHP whois查询类定义与用法示例
2019/04/03 PHP
jQuery 文本框得失焦点的简单实例
2014/02/19 Javascript
jQuery控制网页打印指定区域的方法
2015/04/07 Javascript
关于JavaScript中事件绑定的方法总结
2016/10/26 Javascript
jQuery简单自定义图片轮播插件及用法示例
2016/11/21 Javascript
深入理解Commonjs规范及Node模块实现
2017/05/17 Javascript
JavaScript实现微信红包算法及问题解决方法
2018/04/26 Javascript
vue axios数据请求及vue中使用axios的方法
2018/09/10 Javascript
JavaScript函数的4种调用方法实例分析
2019/03/05 Javascript
JavaScript变速动画函数封装添加任意多个属性
2019/04/03 Javascript
小程序两种滚动公告栏的实现方法
2019/09/17 Javascript
浅析JavaScript预编译和暗示全局变量
2020/09/03 Javascript
[16:04]DOTA2海涛带你玩炸弹 9月5日更新内容详解
2014/09/05 DOTA
Python处理字符串之isspace()方法的使用
2015/05/19 Python
Python中如何将一个类方法变为多个方法
2019/12/30 Python
keras自动编码器实现系列之卷积自动编码器操作
2020/07/03 Python
印度最大的旅游网站:MakeMyTrip
2016/10/05 全球购物
英国50岁以上人群的交友网站:Ourtime
2018/03/28 全球购物
Swanson中国官网:美国斯旺森健康产品公司
2021/03/01 全球购物
幼教求职信
2014/03/12 职场文书
大学生学习2014全国两会心得体会
2014/03/13 职场文书
2014年最新学习全国两会精神心得
2014/03/17 职场文书
电子装配专业毕业生求职信
2014/04/23 职场文书
仓管员岗位职责
2015/02/03 职场文书
财务部岗位职责
2015/02/03 职场文书
公务员年度个人总结
2015/02/12 职场文书
个人总结与自我评价
2015/02/14 职场文书
趣味运动会口号
2015/12/24 职场文书
2016年百日安全生产活动总结
2016/04/06 职场文书
TV动画《政宗君的复仇》第二季制作决定PV公布
2022/04/02 日漫