基于zepto适合移动端的幸运大转盘插件

当前位置:主页 > jQuery库 > 工具类 > 基于zepto适合移动端的幸运大转盘插件
基于zepto适合移动端的幸运大转盘插件
分享:

    插件介绍

    这是一款基于zepto适合移动端的幸运大转盘插件。该幸运大转盘特效使用简单,可以在桌面端和移动端使用。

    浏览器兼容性

    浏览器兼容性
    时间:02-12
    阅读:
简要教程

这是一款基于zepto适合移动端的幸运大转盘插件。该幸运大转盘特效使用简单,可以在桌面端和移动端使用。

使用方法

在页面中引入kinerLottery.css,zepto.js和kinerLottery.js文件。

<link rel="stylesheet" href="css/kinerLottery.css">
<script src="js/zepto.min.js"></script>
<script src="js/kinerLottery.js"></script>                  
                
HTML结构

该幸运大转盘的HTML结构如下:

<div id="box" class="box">
    <div class="outer KinerLottery KinerLotteryContent">
        <img src="./images/lanren.png">
    </div>
    <div class="inner KinerLotteryBtn start"></div>
</div>                  
                
初始化插件

在页面DOM元素加载完毕之后,通过下面的方法来初始化该幸运大转盘插件。

/**
 * 根据转盘旋转角度判断获得什么奖品
 * @param deg
 * @returns {*}
 */
var whichAward = function(deg) {
    if ((deg > 330 && deg <= 360) || (deg > 0 && deg <= 30)) { //10M流量
        return "三网通流量 10M";
    } else if ((deg > 30 && deg <= 90)) { //IPhone 7
        return "iPhone7";
    } else if (deg > 90 && deg <= 150) { //30M流量
        return "三网通流量 30M";
    } else if (deg > 150 && deg <= 210) { //5元话费
        return "话费5元";
    } else if (deg > 210 && deg <= 270) { //IPad mini 4
        return "ipad mini4";
    } else if (deg > 270 && deg <= 330) { //20元话费
        return "话费20元";
    }
}
var KinerLottery = new KinerLottery({
    rotateNum: 8, //转盘转动圈数
    body: "#box", //大转盘整体的选择符或zepto对象
    direction: 0, //0为顺时针转动,1为逆时针转动
    disabledHandler: function(key) {
        switch (key) {
            case "noStart":
                alert("活动尚未开始");
                break;
            case "completed":
                alert("活动已结束");
                break;
        }
    }, //禁止抽奖时回调
    clickCallback: function() {
        //此处访问接口获取奖品
        function random() {
            return Math.floor(Math.random() * 360);
        }
        this.goKinerLottery(random());
    }, //点击抽奖按钮,再次回调中实现访问后台获取抽奖结果,拿到抽奖结果后显示抽奖画面
    KinerLotteryHandler: function(deg) {
            alert("恭喜您获得:" + whichAward(deg));

        } //抽奖结束回调
});