zoukankan      html  css  js  c++  java
  • 抽奖示例

    运行样式:

    代码和注释参考代码中:

    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title></title>
        <style>
            body {
                background-image: url(cjbg.jpg);
                background-repeat: no-repeat;
                background-size: 100%;
            }
    
            * {
                margin-left: 0;
                padding-left: 0;
            }
    
            #title {
                width: 560px;
                height: 321px;
                margin: 200px auto 0 auto;
            }
    
            .shanDeng, .shanDeng2 {
                width: 858px;
                height: 858px;
                background-size: 100%;
                background-repeat: no-repeat;
                margin: 88px auto 0 auto;
            }
    
            .shanDeng {
                background-image: url(shandeng1.png);
            }
    
            .shanDeng2 {
                background-image: url(shandeng2.png);
            }
    
            #btn .cjBtnDom, #btn .cjBtn, .shanDeng .active, .shanDeng td {
                width: 140px;
                height: 140px;
                background-repeat: no-repeat;
                background-size: 100%;
            }
    
            #btn.cjBtn {
                background-image: url(buttonUp.png);
            }
    
            #btn.cjBtnDom {
                background-image: url(buttonDown.png);
            }
    
    
            #luck .active {
                background-image: url(active.png);
            }
    
            .shanDeng td {
                text-align: center;
                background-image: url(proBj.png);
            }
    
            .shanDeng table {
                padding-left: 63px;
                padding-top: 63px;
            }
        </style>
    </head>
    <body>
        <div class="shanDeng" id="deng1">
            <div id="luck">
                <!-- luck -->
                <table>
                    <tbody>
                        <tr>
                            <td class="luck-unit luck-unit-0"><img src="1.png"></td>
                            <td class="luck-unit luck-unit-1"><img src="3.png"></td>
                            <td class="luck-unit luck-unit-2"><img src="0.png"></td>
    
                        </tr>
                        <tr>
                            <td class="luck-unit luck-unit-7"><img src="2.png"></td>
                            <td class="cjBtn" id="btn"></td>
                            <td class="luck-unit luck-unit-3"><img src="5.png"></td>
                        </tr>
                        <tr>
                            <td class="luck-unit luck-unit-6"><img src="6.png"></td>
                            <td class="luck-unit luck-unit-5"><img src="4.png"></td>
                            <td class="luck-unit luck-unit-4"><img src="7.png"></td>
                        </tr>
                    </tbody>
                </table>
            </div><!-- luckEnd -->
        </div>
        <script src="Scripts/jquery-1.8.2.min.js"></script>
        <script>
            var luck = {
                index: -1,    //当前转动到哪个位置,起点位置
                count: 0,    //总共有多少个位置
                timer: 0,    //setTimeout的ID,用clearTimeout清除
                speed: 20,    //初始转动速度
                times: 0,    //转动次数
                cycle: 50,    //转动基本次数:即至少需要转动多少次再进入抽奖环节
                prize: -1,    //中奖位置
                init: function (id) {
                    if ($("#" + id).find(".luck-unit").length > 0) {
                        $luck = $("#" + id);
                        $units = $luck.find(".luck-unit");
                        this.obj = $luck;
                        this.count = $units.length;
                        $luck.find(".luck-unit-" + this.index).addClass("active");
                    };
                },
    
    
                roll: function () {
                    var index = this.index;
                    var count = this.count;
                    var luck = this.obj;
                    $(luck).find(".luck-unit-" + index).removeClass("active");
                    index += 1;
                    if (index > count - 1) {
                        index = 0;
                    };
                    $(luck).find(".luck-unit-" + index).addClass("active");
                    this.index = index;
                    return false;
                },
                stop: function (index) {
                    this.prize = index;
                    return false;
                }
            };
    
    
            function roll() {
                luck.times += 1;
                luck.roll();
                if (luck.times > luck.cycle + 10 && luck.prize == luck.index) {
                    clearTimeout(luck.timer);
                    luck.prize = -1;
                    luck.times = 0;
                    click = false;
                } else {
                    if (luck.times < luck.cycle) {
                        luck.speed -= 10;
                    } else if (luck.times == luck.cycle) {
                        var index = Math.random() * (luck.count) | 0;
                        luck.prize = index;
                    } else {
                        if (luck.times > luck.cycle + 10 && ((luck.prize == 0 && luck.index == 7) || luck.prize == luck.index + 1)) {
                            luck.speed += 110;
                        } else {
                            luck.speed += 20;
                        }
                    }
                    if (luck.speed < 40) {
                        luck.speed = 40;
                    };
    
                    luck.timer = setTimeout(roll, luck.speed);
                }
                return false;
            }
    
    
            //闪灯效果
            var num = 0;
            $(".shanDeng").attr("class", function () {
                setInterval(function () {
                    num++;
                    if (num % 2 == 0) {
                        $('#deng').addClass("shanDeng2");
                    } else {
                        $('#deng').addClass("shanDeng");
                        $('#deng').removeClass('shanDeng2');
                    }
                }, 500)
            })
    
    
            var click = false;
            window.onload = function () {
                luck.init('luck');
                $("#btn").click(function () {
                    //按下弹起效果
                    $("#btn").addClass("cjBtnDom");
                    setTimeout(function () {
                        $("#btn").removeClass("cjBtnDom");
                    }, 200);
    
    
                    if (click) {
                        return false;
                    }
                    else {
                        luck.speed = 100;
                        roll();
                        click = true;
                        return false;
                    }
    
                });
            };
        </script>
    </body>
    </html>
    
    <script type="text/javascript">
        function stops() {
            return false;
        }
        document.oncontextmenu = stops;
    </script>
    View Code

    下载地址:

     http://files.cnblogs.com/files/kennyliu/Lucky.rar

  • 相关阅读:
    centos6.5 源码安装 gtk 环境
    世界的复杂性
    将 shell 脚本打包到 rpm 包中
    使用 ipdb 调试 Python
    shell 处理 文件名本身带星号的情况
    如果可以更更完善,为什么不呢?
    比较有名的开源项目
    各种小工具合集
    各种版本对应关系
    dns相关
  • 原文地址:https://www.cnblogs.com/kennyliu/p/6386466.html
Copyright © 2011-2022 走看看