1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > PHP jquery转盘抽奖 php+jqueryRotate实现大转盘抽奖

PHP jquery转盘抽奖 php+jqueryRotate实现大转盘抽奖

时间:2023-05-01 08:20:58

相关推荐

PHP jquery转盘抽奖 php+jqueryRotate实现大转盘抽奖

data.php文件

//定义抽奖项

$prize_arr=array(

'0' => array('id'=>1,'min'=>137,'max'=>178,'prize'=>'一等奖','v'=>9984),

'1' => array('id'=>2,'min'=>227,'max'=>268,'prize'=>'二等奖','v'=>5),

'2' => array('id'=>3,'min'=>1,'max'=>44,'prize'=>'三等奖','v'=>10),

'3' => array('id'=>4,'min'=>array(47,92,182,272,317),'max'=>array(88,133,223,313,358),'prize'=>'再接再励,下次可能中奖哦!','v'=>1),

);

foreach($prize_arr as $k=>$v){

$varr[$v['id']] = $v['v'];

}

//根据概率获取中奖id

$rid = get_rand($varr);

//中奖项

$rs = $prize_arr[$rid-1];

$min = $rs['min'];

$max = $rs['max'];

//判断¥rs的id是否是3,(判断min和max是否是数组)

if($rs['id']=='4'){

$i = mt_rand(0,4);

$result['angle'] = mt_rand($min[$i],$max[$i]);

}else{

$result['angle'] = mt_rand($min,$max);

}

$result['prize'] = iconv('gb2312','utf-8',$rs['prize']);

$result['rid']=$rs['id'];

echo json_encode($result);

//概率算法

function get_rand($proArr) {

$result = '';

//概率数组的总概率精度

$proSum = array_sum($proArr);

//概率数组循环

foreach ($proArr as $key => $proCur) {

$randNum = mt_rand(1, $proSum);

if ($randNum <= $proCur) {

$result = $key;

break;

} else {

$proSum -= $proCur;

}

}

unset ($proArr);

return $result;

}

?>index.hrml

抽奖插件前端制作

*{margin:0; padding:0; font-size:14px;}

body{text-align: center; background-color: #1664ad;}

#main_bg{border:0px solid black;width:510px; margin:0 auto;}

#rotate-bg{position:relative; background:url(images/rotate_bg.png) no-repeat; height:510px; width:510px; margin:0 auto;}

#rotate_static{position:absolute; top:148px; left:148px; cursor:pointer;}

$(function(){

$("#imgbutton").click(function(){

sub();

});

});

function sub(){

$.ajax({

type:'POST',

url:'check.php',

dataType:'json',

cache:false,

error:function(){

alert('出错了');

return false;

},

success:function(rs){

$("#imgbutton").unbind('click').css('cursor','default');

var a = rs.angle;//角度

var p = rs.prize; //奖项

var rid = rs.rid;

$("#imgbutton").rotate({

duration:5000,//转动时间

angle:0,

animateTo:1800+a, //转动角度

easing: $.easing.easeOutSine,

callback: function(){

if(rid != 4){

var con = confirm('恭喜你,中得'+p+'请在跳转后填写个人信息,以便于我们给你发送奖品!');

if(con){

window.location('');

}else{

return false;

}

}else{

var con = confirm('很遗憾,下次有可能中奖哦!');

if(con){

sub();

}else{

return false;

}

}

}

});

}

});

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。