PHP+jQuery开发简单翻牌抽奖的功能(代码实例)

PHP+jQuery开发简单的翻牌抽奖实例,实现流程:页面放置6个方块作为奖项,当抽奖者点击某一块时,方块翻转到背面,显示中奖信息,这个奖品是随机的,不是固定的。

PHP+jQuery开发简单翻牌抽奖的功能(代码实例)

在页面上放置6个奖项:

  1. <ul >
  2. <li class="red" title="点击抽奖">1</li>
  3. <li class="green" title="点击抽奖">2</li>
  4. <li class="blue" title="点击抽奖">3</li>
  5. <li class="purple" title="点击抽奖">4</li>
  6. <li class="olive" title="点击抽奖">5</li>
  7. <li class="brown" title="点击抽奖">6</li>
  8. </ul>

点击每个方块,触发的事件:

  1. $("#prize li").each(function() {
  2. var p = $(this);
  3. var c = $(this).attr('class');
  4. p.css("background-color", c);
  5. p.click(function() {
  6. $("#prize li").unbind('click'); //连续翻动
  7. $.getJSON("ajax.php",
  8. function(json) {
  9. var prize = json.yes; //抽中的奖项
  10. p.flip({
  11. direction: 'rl',
  12. //翻动的方向rl:right to left
  13. content: prize,
  14. //翻转后显示的内容即奖品
  15. color: c,
  16. //背景色
  17. onEnd: function() { //翻转结束
  18. p.css({
  19. "font-size": "22px",
  20. "line-height": "100px"
  21. });
  22. p.attr("id", "r"); //标记中奖方块的id
  23. $("#viewother").show(); //显示查看其他按钮
  24. $("#prize li").unbind('click').css("cursor", "default").removeAttr("title");
  25. }
  26. });
  27. $("#data").data("nolist", json.no); //保存未中奖信息
  28. });
  29. });
  30. });

翻开其他方块:

  1. $("#viewother").click(function() {
  2. var mydata = $("#data").data("nolist"); //获取数据
  3. var mydata2 = eval(mydata); //通过eval()函数可以将JSON转换成数组
  4. $("#prize li").not($('#r')[0]).each(function(index) {
  5. var pr = $(this);
  6. pr.flip({
  7. direction: 'bt',
  8. color: 'lightgrey',
  9. content: mydata2[index],
  10. //奖品信息(未抽中)
  11. onEnd: function() {
  12. pr.css({
  13. "font-size": "22px",
  14. "line-height": "100px",
  15. "color": "#333"
  16. });
  17. $("#viewother").hide();
  18. }
  19. });
  20. });
  21. $("#data").removeData("nolist");
  22. });