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 相关文章推荐
滚动经典最新话题[prototype框架]下编写
Oct 03 Javascript
JQuery自定义事件的应用 JQuery最佳实践
Aug 01 Javascript
JS Range HTML文档/文字内容选中、库及应用介绍
May 12 Javascript
关于innerHTML后丢失动态绑定的EVENT问题解决方法
May 19 Javascript
setInterval计时器不准的问题解决方法
May 08 Javascript
JS实现CheckBox复选框全选全不选功能
May 06 Javascript
PHP+jquery+ajax实现分页
Dec 09 Javascript
浅谈Vuex@2.3.0 中的 state 支持函数申明
Nov 22 Javascript
nginx部署访问vue-cli搭建的项目的方法
Feb 12 Javascript
JS实现简单获取最近7天和最近3天日期的方法
Apr 18 Javascript
浅谈vue的第一个commit分析
Jun 08 Javascript
jQuery中event.target和this的区别详解
Aug 13 jQuery
基于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
现磨咖啡骗局!现磨咖啡=新鲜咖啡?现磨咖啡背后的猫腻你不懂!
2019/03/28 冲泡冲煮
织梦模板标记简介
2007/03/11 PHP
PHP里的中文变量说明
2011/07/23 PHP
解析phpstorm + xdebug 远程断点调试
2013/06/20 PHP
ThinkPHP中URL路径访问与模块控制器之间的关系
2014/08/23 PHP
php使用fgetcsv读取csv文件出现乱码的解决方法
2014/11/08 PHP
php遍历目录方法小结
2015/03/10 PHP
php实现倒计时效果
2015/12/19 PHP
nicejforms——美化表单不用愁
2007/02/20 Javascript
alixixi runcode.asp的代码不错的应用
2007/08/08 Javascript
javascript 冒泡排序 正序和倒序实现代码
2010/12/14 Javascript
jquery中ajax调用json数据的使用说明
2011/03/17 Javascript
基于JQuery的多标签实现代码
2012/09/19 Javascript
判断及设置浏览器全屏模式
2014/04/20 Javascript
JS常用表单验证方法总结
2014/05/22 Javascript
原生JS和jQuery版实现文件上传功能
2016/04/18 Javascript
jquery仿京东商品放大浏览页面
2017/06/06 jQuery
微信小程序wxs实现吸顶效果
2020/01/08 Javascript
vue中activated的用法
2021/01/03 Vue.js
python基础教程之面向对象的一些概念
2014/08/29 Python
Python中函数的用法实例教程
2014/09/08 Python
python实现在windows下操作word的方法
2015/04/28 Python
Python自动化运维之IP地址处理模块详解
2017/12/10 Python
python3+PyQt5实现支持多线程的页面索引器应用程序
2018/04/20 Python
Numpy数据类型转换astype,dtype的方法
2018/06/09 Python
Python3几个常见问题的处理方法
2019/02/26 Python
完美解决TensorFlow和Keras大数据量内存溢出的问题
2020/07/03 Python
python 如何实现遗传算法
2020/09/22 Python
天猫精选:上天猫,就够了
2016/09/21 全球购物
Haggar官网:美国男装品牌
2020/02/16 全球购物
高一学生期末评语
2014/04/25 职场文书
捐献物资倡议书范文
2014/05/19 职场文书
旷工检讨书1000字
2015/01/01 职场文书
2015中秋祝酒词
2015/08/12 职场文书
python第三方网页解析器 lxml 扩展库与 xpath 的使用方法
2021/04/06 Python
Mysql中mvcc各场景理解应用
2022/08/05 MySQL