css3转盘抽奖
做到一个活动,需要转盘抽奖,于是想到使用css3的动画效果,其中主要包含transition的动画过渡,transform的rotate的旋转效果,在这里只用到2d的旋转,
特别强调的是,因为需要和后台做交互,是后台决定你获得什么奖然后把结果传给前台,还是前台决定你获得什么奖把内容传给后台,这里需要你们自行决定,我在这里使用的是后台决定获奖内容,然后前台控制角度。
这里,我设定转盘在3秒内转5圈,然后计算几等奖,然后转盘转到相应位置。agax属于请求中奖代号,代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>旋转</title>
<style type="text/css" media="screen">
*{
margin: 0;padding: 0;
}
#parent{
position: relative;
width: 310px;
height: 310px;
}
#rotate{
width: 310px;
height: 310px;
transition: all 3s;
}
#zhen{
position: absolute;
left: 86px;
top: 65px;
width: 130px;
height: 154px; }
.aa{
width: 130px;
height: 154px;
}
</style>
<script src="jquery.min.js" type="text/javascript" ></script>
</head>
<body>
<div id="parent">
<div id="rotate"><img src="0.png"></div>
<div id="zhen"><img class="aa" src="pointer2.png"></div>
</div> <script type="text/javascript">
$(function(){ var bTag = 0;//点击次数
$('#zhen').click(function(){
// $.ajax({
// url:'',
// type:'get',
// data:{
// userId:userId
// },
// success:function(data){
// if(data.result){
// console.log('您有一次抽奖机会');
// //5quan=1800 最低旋转180度
// if(data.code == 1){//一等奖
// var aa = Math.floor(Math.random()*46)+(2160+bTag*1800)+'deg';
// }
// if(data.code == 2){//二等奖
// var aa = Math.floor(Math.random()*46)+(2115+bTag*1800)+'deg';
// }
// if(data.code == 3){
// var aa = Math.floor(Math.random()*46)+(2070+bTag*1800)+'deg';
// }
// if(data.code == 4){
// var aa = Math.floor(Math.random()*46)+(2025+bTag*1800)+'deg';
// }
// if(data.code == 5){
// var aa = Math.floor(Math.random()*46)+(1980+bTag*1800)+'deg';
// }
// if(data.code == 6){
// var aa = Math.floor(Math.random()*46)+(1935+bTag*1800)+'deg';
// }
// if(data.code == 7){
// var aa = Math.floor(Math.random()*46)+(1890+bTag*1800)+'deg';
// }
// if(data.code == 8){
// var aa = Math.floor(Math.random()*46)+(1800+bTag*1800)+'deg';
// }
// }
// }
// }) bTag++;
var cc = "rotate("+aa+")";
console.log(cc); $("#rotate").css({'transform':cc}) })
}) </script> </body> </html>
css3转盘抽奖的更多相关文章
- 纯CSS3大转盘抽奖(响应式、可配置)
源于前段时候微信小程序最初火爆公测时段,把以前用 Canvas 实现的大转盘抽奖移植成微信小程序,无奈当时小程序对 Canvas 支持不够完善,只好降低用 CSS3 实现.虽然比不上 Canvas 绘 ...
- javascript 转盘抽奖代码和计数器代码
要介绍了javascript圆盘抽奖程序实现原理和完整代码例子,需要的朋友可以参考下 看到网页上有不少大转盘抽奖的应用,心血来潮也想弄个.于是找了点资料自己研究... 效果预览: 一.模拟抽奖的实 ...
- web:转盘抽奖
移动web:转盘抽奖(幸运大转盘) 为了获取客户.回馈客户,平台一般会推出抽奖活动类的营销页.因此web页面中,有各式各样的抽奖效果. 格子式(九宫格),背景滚动式(数字/文字/图案),旋转式(转 ...
- 移动web:转盘抽奖(幸运大转盘)
为了获取客户.回馈客户,平台一般会推出抽奖活动类的营销页.因此web页面中,有各式各样的抽奖效果. 格子式(九宫格),背景滚动式(数字/文字/图案),旋转式(转盘),游戏式(砸蛋/拼图...).... ...
- canvas转盘抽奖的实现(二)
本篇是<canvas转盘抽奖的实现(一)>的另一种实现方法,主要通过css3的transform以及transition过渡来实现. // ' + r + '等奖'; } draw ...
- 【Vue.js游戏机实战】- Vue.js实现大转盘抽奖总结
大家好!先上图看看本次案例的整体效果. 实现思路: Vue component实现大转盘组件,可以嵌套到任意要使用的页面. css3 transform控制大转盘抽奖过程的动画效果. 抽奖组件内使用钩 ...
- js实现转盘抽奖
大转盘抽奖,主要通过css3的"transform:rotate(0deg)"属性来控制元素的旋转角度来实现. 通常,抽奖的过程需要渐进的效果,所以直接通过旋转属性写比较繁琐. 这 ...
- HTML5 Canvas绘制转盘抽奖
新项目:完整的Canvas转盘抽奖代码 https://github.com/givebest/GB-canvas-turntable 演示 http://blog.givebest.cn/GB-ca ...
- canvas转盘抽奖
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" ...
随机推荐
- jQuery插件制作
模板:(function($){ $.fn.plugins=function(options){ var defaults = { } var options = $.extend(defaults, ...
- Entity Framework查询注意
首先我们看下where的方法,直接查看定义(定义如下),其实一种是对IEnumerable的扩展,一种是对IQueryable的扩展,直接看最常用的,其实区别就在IEnumerable的扩展的参数是系 ...
- Android sdk配置 常见问题及处理方法
1. 下载sdk压缩包,解压后显示 2.双击SDK Manager.exe 程序进入如下界面 注:有的童鞋可能遇到如下问题 一般将一和二两种操作都完成就OK了 一. 更新sdk,遇到了更新下载失败问题 ...
- C语言学习第六章
今天开始尝试改变! 今天要学习函数,一个C语言中的重要组成部分. 首先先聊聊为什么要使用函数?随着学习的深入很多人会发现某段的代码重复使用的几率很大,而如果用一次写一次的话很明显的效率就会比较低,如果 ...
- java8 Lambda表达式的新手上车指南(1)
背景 java9的一再推迟发布,似乎让我们恍然想起离发布java8已经过去了三年之久,java8应该算的上java语言在历代版本中变化最大的一个版本了,最大的新特性应该算得上是增加了lambda表达式 ...
- CodeVS1344 线型网络
题目描述 Description 有 N ( <=20 ) 台 PC 放在机房内,现在要求由你选定一台 PC,用共 N-1 条网线从这台机器开始一台接一台地依次连接他们,最后接到哪个以及连接的顺 ...
- test back
python Mysql 下载地址 http://sourceforge.net/projects/mysql-python/
- 基于CSS的个人网页
前端时间做的CSS作业:基于CSS的个人网页 基于CSS的个人网页 效果图: 代码: <!DOCTYPE html> <html> <head> <meta ...
- Xcode8插件安装
一.创建一个自定义证书并且为Xcode重新签名1.打开钥匙串 2.创建自定义签名证书 3.重新签名Xcode(速度比较慢,大概要等1分钟) $ sudo codesign -f -s XcodeSig ...
- Linux安装yum以及更新yum版本
.使用RedHat系统不能正常使用yum安装 由于RedHat没有注册,所有不能使用它自身的资源更新,于是使用yum instatll gcc-c++的时候出现This system is not r ...