javascript实现可键盘控制的抽奖系统

 更新时间:2016年03月10日 11:53:12   作者:白超华  
这篇文章主要为大家详细介绍了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>

希望本文所述对大家的学习有所帮助,轻松实现抽奖系统。

相关文章

  • JS截取字符串的方法详解

    JS截取字符串的方法详解

    本文详细讲解了JS截取字符串的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02
  • JS中节流和防抖函数的实现及区别示例

    JS中节流和防抖函数的实现及区别示例

    这篇文章主要为大家介绍了JS中节流和防抖函数的实现及使用区别示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • js阻止冒泡及jquery阻止事件冒泡示例介绍

    js阻止冒泡及jquery阻止事件冒泡示例介绍

    JQuery 提供了两种方式来阻止事件冒泡,Jquery阻止默认动作即通知浏览器不要执行与事件关联的默认动作,下文有个不错的示例,需要的朋友可以参考下
    2013-11-11
  • JS选项卡动态替换banner图片路径的方法

    JS选项卡动态替换banner图片路径的方法

    这篇文章主要介绍了JS选项卡动态替换banner图片路径的方法,涉及javascript操作文件css样式的相关技巧,非常简单实用,需要的朋友可以参考下
    2015-05-05
  • js 实现日期灵活格式化的小例子

    js 实现日期灵活格式化的小例子

    这篇文章介绍了js实现日期灵活格式化的小例子,有需要的朋友可以参考一下
    2013-07-07
  • 一文带你深入理解JavaScript模板引擎

    一文带你深入理解JavaScript模板引擎

    在Web前端开发中,需要将数据动态渲染到页面上,随着应用程序的复杂度增加,数据渲染的逻辑也变得越来越复杂,这时候就需要使用模板引擎来帮助我们动态生成HTML标记,本文将深入介绍 JavaScript 模板引擎,帮助读者更好地理解和应用模板引擎
    2023-06-06
  • js原生代码实现轮播图的实例讲解

    js原生代码实现轮播图的实例讲解

    下面小编就为大家带来一篇js原生代码实现轮播图的实例讲解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • jquery和css3中的选择器nth-child使用方法和用途示例

    jquery和css3中的选择器nth-child使用方法和用途示例

    nth-child(),是CSS3中的一个伪类选择符,JQuery选择器继承了CSS的部分语法,允许通过标签名、属性名、内容对DOM元素进行快速、准确的选择。
    2023-03-03
  • 完美实现js拖拽效果 return false用法详解

    完美实现js拖拽效果 return false用法详解

    这篇文章主要为大家详细介绍了完美实现js拖拽效果的代码,一起学习return false的用法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07

最新评论