效果图:

需引入js文件:

<script src="js/jquery-3.2.0.js"></script>
<script src="js/jquery.slotmachine.js"></script>

html代码:

<div class="draw_wrap">
<dl class="clearfix">
<dd id="machine1" class="mui-pull-left">
<div class="cell">
<img src="data:images/1-1.png" />
</div>
<div class="cell">
<img src="data:images/1-2.png" />
</div>
<div class="cell">
<img src="data:images/1-3.png" />
</div>
</dd>
<dd id="machine2" class="mui-pull-left">
<div class="cell">
<img src="data:images/1-2.png" />
</div>
<div class="cell">
<img src="data:images/1-3.png" />
</div>
<div class="cell">
<img src="data:images/1-1.png" />
</div>
</dd>
<dd id="machine3" class="mui-pull-left">
<div class="cell">
<img src="data:images/1-3.png" />
</div>
<div class="cell">
<img src="data:images/1-1.png" />
</div>
<div class="cell">
<img src="data:images/1-2.png" />
</div>
</dd>
</dl>
<div id="stopBtn" class="stop_btn" data-type="stopBtn"></div>
<div class="result">
<p>未中奖,再接再厉</p>
<a id="alignBtn" class="align_btn" href="#">再来一次</a>
</div>
</div>
</div>

js代码:

$(function () {
var machine1 = $("#machine1").slotMachine({
active:0,
delay:500
});
var machine2 = $("#machine2").slotMachine({
active:1,
delay:500
});
var machine3 = $("#machine3").slotMachine({
active:2,
delay:500
});
function startSlotmachine(){
machine1.shuffle();
machine2.shuffle();
machine3.shuffle();
}
startSlotmachine()
$("#alignBtn").click(function(){
startSlotmachine()
});
$("#stopBtn").click(function(){
if(machine1.isRunning()){
machine1.stop(true);
setTimeout(function(){
setTimeout(machine2.stop(true));
},500)
setTimeout(function(){
setTimeout(machine3.stop(true));
},1000)
}
});
});

JS常用属性、方法、事件详解

(1)初始化方法  var machine = $("#id").slotMachine({});  返回当前旋转的对象。slotMachine()方法里面传递初始化的参数,比如

  active:表示初始化的时候显示项的索引,从0开始
  delay:切换两张图片的间隔时间(毫秒单位)
  auto:是否自动旋转,取值为true or false
  spins:当auto为true的时候,这是每次跳过图标的个数
  stophidden:是否出现开始和停止时候的动画
  randomize:function(activeElementIndex){}此属性表示每次旋转后选中值的索引(从0开始)
  direction:动画的方向,取值(up||down)
(2)常用方法

  machine.shuffle( repeat, onStopCallback ); 表示开始旋转,repeat表示每次跳过的图片个数;onstopCallback表示旋转停止后的事件回调方法。
   machine.prev(); 返回前一个元素
   machine.next(); 返回后一个元素
   machine.stop(); 停止旋转
   machine.active; 得到选中的元素的索引
   machine.running; 检测是否正在旋转,true表示正在旋转
   machine.stopping; 检测是否已经停止
   machine.destroy(); 摧毁旋转节点

完整代码:https://github.com/eleven-123/jquery.slotmachine

3列滚动抽奖 jquery.slotmachine的更多相关文章

  1. js手机号批量滚动抽奖代码实现

    我们平时在看一些选秀节目或一些歌唱类比赛节目时经常会看到在现场的大屏幕上会有观众的手机号在滚动来选出谁是幸运观众或谁中了什么奖项,这些手机号都是现场观众或场外观众在给选手投票时产生的,当主持人一声开始 ...

  2. C#部分---利用arraylist集合做滚动抽奖;

    输入多个手机号码,放到集合中,进行三秒钟的滚动抽奖:随机显示号码,清空,再显示: 1.收集号码: 2.每隔三秒进行抽奖,及作弊代码,哈哈哈: 3.System.Threading.Thread.Sle ...

  3. 一款兼容IE6并带有多图横向滚动的jquery特效

    一款兼容IE6并带有多图横向滚动的jquery特效,自动切换多个图片的jquery特效效果, 为大家分享这个的原因是,这款特效在兼容IE6上面很完美,实用性就广很多了. 适用浏览器:IE6.IE7.I ...

  4. 分享一款页面视差滚动切换jquery.localscroll插件

    今天给大家分享一款页面视差滚动切换jquery.localscroll插件. 滚动鼠标液动条看下页面的切换效果.该插件适用浏览器:IE8.360.FireFox.Chrome.Safari.Opera ...

  5. 图片文字滚动插件jQuery Scrollbox

    图片文字滚动插件jQuery Scrollbox附件中提供了五种图片.文字滚动样式,只需调用jquery库和jQuery Scrollbox插件,然后再加一段简单的jquery代码即可使用,兼容性良好 ...

  6. 页面动态数据的滚动效果——jquery滚动组件(vticker.js)

    <script language="javascript" src="lirms/Test/jquery-1.4.2.js"></script ...

  7. 整屏滚动效果 jquery.fullPage.js插件+CSS3实现

    最近很流行整屏滚动的效果,无论是在PC端还是移动端,本人也借机学习了一下,主要通过jquery.funnPage.js插件+CSS3实现效果. 本人做的效果: PC端:http://demo.qpdi ...

  8. 一个文字无缝滚动的jQuery插件

    直接上代码吧 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www. ...

  9. 1.2.8 Excel做个滚动抽奖

    1.首先要准备好数据库: 2.用RAND函数来生成随机数字,做一个辅助列: 3.制作抽奖界面: 4.输入公式: 在F3中输入下列公式并填充至F5: =INDEX(A:A,MATCH(SMALL(B:B ...

随机推荐

  1. 使用Fiddler抓取手机包

    配置Fiddler 设置抓取HTTPS包 允许为外部连接 配置移动端 移动端需要能够连接到主机做代理, 设置移动端的网络, 端口为Fiddler的端口, 然后给移动端安装证书, 访问主机名+代理端口号 ...

  2. 安装memcached报错:If it's already installed, specify its path using --with-libevent=/dir/

    一.安装memcached,执行./configure --prefix=/usr/local/memcached时候报错: 问题:If it's already installed, specify ...

  3. Java ArrayList使用技巧 - 两个ArrayList去除重复的元素

    方法一.ArrayList中提供的removeAll方法(效率最低) List1.removeAll(mSubList); 方法二.双重循环(比方法一效率高) 双重循环分为内外两层循环,经过测试,将元 ...

  4. jQuery 事件 click() 方法,dblclick() 方法

    click() 方法 当点击元素时,会发生 click 事件. 当鼠标指针停留在元素上方,然后按下并松开鼠标左键时,就会发生一次 click. click() 方法触发 click 事件,或规定当发生 ...

  5. Java中的线程Thread方法之---interrupt()

    前几篇都介绍了Thread中的几个方法,相信大家都发现一个相似点,那就是sleep,join,wait这样的阻塞方法都必须捕获一个InterruptedException异常,顾名思义就是一个线程中断 ...

  6. MFC进度条

    一.成员函数简介 1.create()针对不是通过资源文件上拖拉进度条控件生成的进度条,需要用此函数创建一个. 2.SetRange()设置进度条的起始值和终止值. 3.SetPos()设置进度条的当 ...

  7. Deep Dive into Neo4j 3.5 Full Text Search

    In this blog we will go over the Full Text Search capabilities available in the latest major release ...

  8. axios 基本运用

    axios是专门对ajax请求进行封装的一个插件,其返回一个promise对象,用法跟ES6的promise很相似 一.安装axios插件npm install axios 二.引入axios插件 在 ...

  9. Qt学习笔记----信号与槽实现的四种方式

    1.以按钮为例,首先添加一个按钮,对象名为pushButton,在按钮是右键单击选择“转到槽”即可,在转到槽选择面板(右图)里面选择需要进行的操作,比如单击clicked() 2.选择菜单“编辑”,找 ...

  10. 2018-8-10-使用-IncrediBuild-提升-VisualStudio-编译速度

    title author date CreateTime categories 使用 IncrediBuild 提升 VisualStudio 编译速度 lindexi 2018-08-10 19:1 ...