jq+css实现转盘抽奖
转盘抽奖是我们常见到的一些客户端活动模版,其核心使用的方法是rotate进行元素旋转,然后后台控制当前抽中的奖项,再有前台控制停留的位置;
设置奖项的js代码如下,当前转盘是六个选项栏;
var isRotate = false;
var isRotate = false;
$("#awardBtn").on("click", function() {
if (isRotate) {
return false
};
var _index = Math.floor(Math.random() * 6);
console.log(_index);
switch (_index) {
case 0:
rotateFunc(0, "名师直播课体验特权(30元)",true);
break;
case 1:
rotateFunc(60, "谢谢参与)",false);
break;
case 2:
rotateFunc(120, "名师直播课体验特权(30元)",true);
break;
case 3:
rotateFunc(180, "谢谢参与",false);
break;
case 4:
rotateFunc(240, "名师直播课体验特权(30元)",true);
break;
case 5:
rotateFunc(300, "谢谢参与",false);
break;
default:
alert("error");
break;
}
})
其实 isRotate是防止多次点击做的开关;
控制转盘在deg角度停下的代码如下:
function rotateFunc(deg, text,pity) {
isRotate = true;
$("#award").rotate({
angle: 0, // 旋转一个角度
animateTo: Number(deg) + 3600, // 从当前的角度旋转到多少度
duration: 3000, // 旋转持续时间
callback: function() { // 旋转完成后的回调函数
isRotate = false;
if(pity){
$(".maskPopContent").show()
}else{
alert("未中奖")
}
}
})
}
代码引入jquery.rotate.min.js、jq即可;

浙公网安备 33010602011771号