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 相关文章推荐
jQuery实现的Email中的收件人效果(按del键删除)
Mar 20 Javascript
.net,js捕捉文本框回车键事件的小例子(兼容多浏览器)
Mar 11 Javascript
浅析JavaScript中的CSS属性及命名规范
Nov 28 Javascript
javascript中不等于的代码是什么怎么写
Dec 29 Javascript
Bootstrap在线电子商务网站实战项目5
Oct 14 Javascript
js如何判断是否在iframe中及防止网页被别站用iframe嵌套
Jan 11 Javascript
利用JS实现简单的瀑布流加载图片效果
Apr 22 Javascript
Angularjs修改密码的实例代码
May 26 Javascript
快速解决vue-cli在ie9+中无效的问题
Sep 04 Javascript
微信小程序搭建(mpvue+mpvue-weui+fly.js)的详细步骤
Sep 18 Javascript
小程序使用分包的示例代码
Mar 23 Javascript
Vue接口封装的完整步骤记录
May 14 Vue.js
基于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
详解Yii2 定制表单输入字段的标签和样式
2017/01/04 PHP
php连接sftp的作用以及实例代码
2019/09/23 PHP
PHP代码加密的方法总结
2020/03/13 PHP
javascript 面向对象编程 万物皆对象
2009/09/17 Javascript
Raphael一个用于在网页中绘制矢量图形的Javascript库
2013/01/08 Javascript
javascript中验证大写字母、数字和中文
2014/01/15 Javascript
使用Chrome调试JavaScript的断点设置和调试技巧
2014/12/16 Javascript
JavaScript获取当前网页最后修改时间的方法
2015/04/03 Javascript
AngularJS中处理多个promise的方式
2016/02/02 Javascript
javascript中的 object 和 function小结
2016/08/14 Javascript
浅析jQuery操作select控件的取值和设值
2016/12/07 Javascript
使用jquery给新生的th绑定hover事件的实例
2017/02/10 Javascript
NodeJS学习笔记之Module的简介
2017/03/24 NodeJs
laravel5.3 vue 实现收藏夹功能实例详解
2018/01/21 Javascript
Vue运用transition实现过渡动画
2019/05/06 Javascript
vue+mock.js实现前后端分离
2019/07/24 Javascript
JS实现排行榜文字向上滚动轮播效果
2019/11/26 Javascript
JS实现基本的网页计算器功能示例
2020/01/16 Javascript
[01:14]TI珍贵瞬间系列(六):冠军
2020/08/30 DOTA
python 生成不重复的随机数的代码
2011/05/15 Python
python多重继承新算法C3介绍
2014/09/28 Python
为Python的web框架编写MVC配置来使其运行的教程
2015/04/30 Python
NumPy.npy与pandas DataFrame的实例讲解
2018/07/09 Python
python+opencv实现霍夫变换检测直线
2020/10/23 Python
使用GitHub和Python实现持续部署的方法
2019/05/09 Python
python用Configobj模块读取配置文件
2020/09/26 Python
Numpy中np.max的用法及np.maximum区别
2020/11/27 Python
HTML5地理定位_动力节点Java学院整理
2017/07/12 HTML / CSS
canvas实现扭蛋机动画效果的示例代码
2018/10/17 HTML / CSS
微信小程序canvas实现水平、垂直居中效果
2020/02/05 HTML / CSS
HTML+CSS+JavaScript实现图片3D展览的示例代码
2020/10/12 HTML / CSS
实习期自我鉴定
2013/10/11 职场文书
洗车工岗位职责
2014/03/15 职场文书
2014年党员加强作风建设思想汇报
2014/09/15 职场文书
送给客户微信问候语!
2019/07/04 职场文书
Python安装及建立虚拟环境的完整步骤
2022/06/25 Servers