jQuery九宮格抽獎效果程式碼例項
分享一段程式碼例項,它實現了九宮格抽獎效果。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> ul { width: 328px; } li { width: 100px; height: 100px; border: 1px #000 solid; float: left; margin-left: 5px; list-style: none; text-align:center; line-height:100px; } .active { background: red; } </style> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script> $(function () { var num = 0; $('input').click(function () { var step = parseInt(Math.random() * 20 + 5); var time = setInterval(function () { $('li').attr('class', ''); $('li').eq(num).addClass('active'); num++; step--; if (step == 0) { clearInterval(time); alert('恭喜你獲得' + $("li[class='active']").html()); } if (num == $('li').length) { num = 0; } }, 100); }); }); </script> </head> <body> <input type="button" value="抽獎"> <ul> <li>1等獎</lSi> <li>2等獎</li> <li>3等獎</li> <li>4等獎</li> <li>5等獎</li> <li>6等獎</li> <li>7等獎</li> <li>8等獎</li> <li>9等獎</li> </ul> </body> </html>
上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。
一.程式碼註釋:
(1).$(function () {}),當文件結構完全載入完畢再去執行函式中的程式碼。
(2).var num = 0,宣告一個變數並賦值為0。(3).$('input').click(function () {}),為按鈕註冊click事件處理函式。
(4).var step = parseInt(Math.random() * 20 + 5),生成一個5-25的隨機數,用作在九宮格中跳動的次數。
(5).var time = setInterval(function () {},100),每100毫秒,執行一次回撥函式。
(6). $('li').attr('class', ''),首先清除元素的class樣式值,防止出現多個紅色格現象。
(7).$('li').eq(num).addClass('active'),為指定索引值的格新增指定樣式雷,這樣背景色就變紅色。
(8).num++,num值加1。
(9).step--,step值減1。
(10).if (step == 0) {
clearInterval(time);
alert('恭喜你獲得' + $("li[class='active']").html());
},如果step等於0,也就是跳動的方格的次數達到最初的step次,那麼就停止定時器函式的執行,並獲取抽獎資訊。
(11).if (num == $('li').length) {
num = 0;
},如果num值等於方格的個數,那麼就將其重置為0。
二.相關閱讀:
(1).parseInt()可以參閱javascript parseInt()一章節。
(2).Math.random()可以參閱javascript Math.random()一章節。
(3).setInterval()可以參閱window.setInterval()一章節。
(4).attr()可以參閱jQuery attr()方法一章節。
(5).eq()可以參閱jQuery eq()方法一章節。
(6).addClass()可以參閱jQuery addClass()方法一章節。
(7).clearInterval()可以參閱clearInterval() 方法一章節。
相關文章
- 九宮格抽獎–手擼程式碼
- 用jQuery編寫簡單九宮格抽獎jQuery
- PHP+Ajax微信手機端九宮格抽獎例項PHP
- js不重複抽獎效果程式碼例項JS
- css九宮格佈局程式碼例項CSS
- js實現刮刮樂抽獎效果程式碼例項JS
- SVG九宮格密碼效果程式碼SVG密碼
- jQuery繪製網格效果程式碼例項jQuery
- canvas 基礎系列(三)之實現九宮格抽獎Canvas
- 基於React跑一個簡易版九宮格抽獎React
- jQuery 動畫效果程式碼例項jQuery動畫
- jquery小球碰撞效果程式碼例項jQuery
- jquery 驗證碼效果程式碼例項jQuery
- jQuery tab選項卡效果程式碼例項jQuery
- jQuery加法驗證碼效果程式碼例項jQuery
- jQuery 隔行變色效果程式碼例項jQuery
- jQuery隔行變色效果程式碼例項jQuery
- jQuery雪花飄落效果程式碼例項jQuery
- jQuery進度條效果程式碼例項jQuery
- jQuery手風琴效果程式碼例項jQuery
- Canvas 基礎系列(零)之大轉盤九宮格刮刮卡抽獎外掛封裝Canvas封裝
- canvas田字格效果程式碼例項Canvas
- PHP+jQuery開發簡單的翻牌抽獎例項PHPjQuery
- jQuery點選滑出層效果程式碼例項jQuery
- jQuery倒數計時效果程式碼例項jQuery
- jQuery數字分頁效果程式碼例項jQuery
- jQuery background-position動畫效果程式碼例項jQuery動畫
- jQuery大圖跟隨效果程式碼例項jQuery
- jquery實現的選項卡效果例項程式碼jQuery
- php中獎概率演算法,可用於大轉盤、九宮格、翻牌、刮刮卡等抽獎演算法PHP演算法
- 微信小程式翻牌抽獎效果微信小程式
- jquery實現的分頁效果例項程式碼jQuery
- jquery尋找最佳路徑效果程式碼例項jQuery
- jQuery選項卡切換圖片效果程式碼例項jQuery
- css 九宮格CSS
- 遊戲九宮格遊戲
- jQuery is() 程式碼例項jQuery
- jquery實現的滑動軸效果程式碼例項jQuery