当前位置: 首页 > news >正文

美业网站wordpress 插件文件夹

美业网站,wordpress 插件文件夹,如何做内容收费的网站,吾道ppt模板免费下载功能介绍 jQuery九宫格抽奖是一种基于jQuery库的前端抽奖效果。通过九宫格的形式展示抽奖项,用户点击抽奖按钮后,九宫格开始旋转,最终停在一个随机位置上,此位置对应的抽奖项为用户的中奖结果。 本文实现九宫格的步骤为&#xf…

功能介绍

jQuery九宫格抽奖是一种基于jQuery库的前端抽奖效果。通过九宫格的形式展示抽奖项,用户点击抽奖按钮后,九宫格开始旋转,最终停在一个随机位置上,此位置对应的抽奖项为用户的中奖结果。

本文实现九宫格的步骤为:
1. 创建一个包含九个格子的九宫格,通过php接口获取奖品信息。
2. 编写jQuery代码,监听抽奖按钮的点击事件,一旦点击,执行抽奖逻辑。
3. 在抽奖逻辑中,通过php接口获取抽奖结果。
4. 使用jQuery的动画函数,让九宫格开始旋转,最后在中奖方块位置停下。
5. 根据停止位置的抽奖项确定用户的中奖结果,并进行相关处理。

为了增加抽奖的趣味性和交互性,还可以在九宫格的格子上增加一些动态效果,例如使用CSS3的动画效果为格子添加旋转、放大等动画效果,或者在抽奖过程中播放一段音乐或动画等等。

效果图

代码实现

后端部分

获取奖品信息,正式项目可以存于数据库中方便后台管理

// 模拟九宫格的奖品
$prize = range(1, 9);
$prizeArray = [];
foreach ($prize as $value){$prizeArray[] = ['id' => $value,'name' => '第' . $value . '个奖品','weight' => $value * 10,// 权重];
}
echo json_encode($prizeArray);

根据奖品权重获取抽奖结果

$totalWeight = array_sum(array_column($prizeArray, 'weight'));// 总权重
$randNumber = rand(1, $totalWeight);// 获取一个随机数
$currentWeight = 0;// 当前权重
$result = [];// 抽奖结果
foreach ($prizeArray as $value){$currentWeight += $value['weight'];if ($randNumber <= $currentWeight){$result = $value;break;}
}
echo $result['id'];

前端部分

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>九宫格抽奖</title><link rel="stylesheet" type="text/css" href="index.css">
</head>
<body><div id="lottery-box"><ul class="lottery-grid"></ul><button id="start-btn">开始抽奖</button></div><script src="jquery.min.js"></script><script src="index.js"></script>
</body>
</html>

样式

#lottery-box {width: 320px;margin: 0 auto;text-align: center;
}.lottery-grid {list-style: none;padding: 0;margin: 0;display: flex;flex-wrap: wrap;justify-content: space-between;
}.grid-item {width: 100px;height: 100px;line-height: 100px;border: 1px solid #000;
}#start-btn {margin-top: 12px;
}

JS部分,这里通过ajax获取奖品信息和抽奖结果,以及动画效果

$(document).ready(function() {$.ajax({//请求资源路径url:"prize.php",//请求方式type:"POST",//请求成功后调用的回调函数success:function (data) {data = $.parseJSON(data);for (let i = 0; i < data.length; i++){$('.lottery-grid').append('<li class="grid-item">' + data[i]['name'] + '</li>');}},//请求失败后调用的回调函数error:function () {alert("未获取到奖品");}});$('#start-btn').click(function() {$(this).prop('disabled', true);setTimeout(function(){$('#start-btn').prop('disabled', false);}, 5000); // 禁用按钮5秒钟const $gridItems = $('.grid-item');$gridItems.css('background-color', '#fff');// 获取抽奖结果$.ajax({//请求资源路径url:"result.php",//请求方式type:"POST",//请求成功后调用的回调函数success:function (data) {let randomNumber = parseInt(data);// 开始动画效果let currentIndex = 0;const interval = setInterval(function () {$gridItems.eq(currentIndex - 1).css('background-color', '#fff');$gridItems.eq(currentIndex).css('background-color', '#8581812A');currentIndex = (currentIndex + 1) % $gridItems.length;}, 200);// 停止动画,显示抽奖结果setTimeout(function() {clearInterval(interval);for (let i = 1; i <= $gridItems.length; i++){if (randomNumber === i){$gridItems.eq(i).css('background-color', '#f00');}else {$gridItems.eq(i).css('background-color', '#fff');}}}, 5000);},//请求失败后调用的回调函数error:function () {alert("获取抽奖结果失败");}});});
});

http://www.15wanjia.com/news/195974.html

相关文章:

  • 网站建设技术论文深圳网站公司哪家好
  • 地税网站如何做税种确认榆林网站建设公司
  • 网络舆情监测专业就业前景扬中seo
  • 做业务在那几个网站上找客户端app官方安装下载
  • 上海模板网建站做商城网站要什么证件
  • 学网站建设培训班一般购物网站有哪些模块
  • 做分析图的地图网站汕头澄海房价
  • 好网站建设因素网站建设设计公司类网站织梦模板(带手机端)
  • 杭州专业网站设计制作邯郸做网站代理
  • 网站建设aichengkeji怎么获取免费的wordpress
  • 买网站多少钱宋家庄网站建设
  • 常州网站公司怎么选广告设计与制作教程
  • 网站定位策划调用wordpress数据
  • 网架公司排名seo整合营销
  • 北京网站怎么建设怎么让百度收录网站所有网页
  • 在智联招聘网站做销售安美东莞网站建设
  • 找素材的网站大全可视化网站制作软件
  • 网站制作用的软件在线生成logo图标免费
  • 怎么做可以直播的网站吗关于建设教体局网站的申请
  • 北京金企鹅网站建设方案微信咋做自己的网站
  • 商丘网站制作费用wordpress插件带seo
  • 公司建立网站流程提升政务网站建设水平
  • 专业做公司logo的网站国外做蒸汽锅炉的网站
  • 承接做网站的网站建网通
  • 搭建集团网站购买域名
  • 仿站小工具+wordpress用html制作网站流程
  • 建设银行网站e动终端网站开发实战视频
  • 网站推广打包建筑资料网站有哪些
  • 虚拟主机子网站seo上海培训
  • 网站虚拟服务器中石油第七建设公司官网