Js实现抽奖转盘,和点击返回某个模块顶部的功能
最近写了几个转盘抽奖的活动页面:
1.设定旋转的角度:

HTML部分:
转盘代码:
<div class="lottery">
<div class="lottery_box">
<div class="flash-light flash"></div>
<div class="lottery_cont" id="lottery_cont"></div>
<div class="lottery_btn" id="lottery_btn"></div>
</div>
</div>
立即注册弹窗:
<div class="popup">
<div class="popup-img" >
<div class="popup-btn"></div>
<div class="close">X</div>
</div>
</div>
/** lottery css **/
.lottery {
position: absolute;
text-align: center;
height: 549px;
width: 100%;
background: url(images/lottery-bg.png) no-repeat top center;
z-index: 4;
top: 20%;
}
.lottery_cont{
position: absolute;
height: 445px;
width: 444px;
background: url(images/lottery.png) no-repeat top center;
z-index: 4;
top: 52px;
left: 50%;
margin-left: -223px;
transition: all .2s ease-out;
-webkit-transition:all .2s ease-out;
}
.lottery_btn{
position: absolute;
height: 126px;
width: 94px;
background: url(images/lot-btn.png) no-repeat top center;
z-index: 4;
top: 35.6%;
left: 50%;
margin-left: -48px;
cursor: pointer;
}
.lottery_btn:hover{
transform: scale(1.1);
} /**popup css **/
.popup {
position: absolute;
top: 0px;
width: 100%;
background: rgba(0,0,0,0.5);
z-index: 10;
height: 100%;
text-align: center;
padding: 10% 0;
display: none;
}
.popup-img{background: url(images/popup.png)top center no-repeat;width:481px;height:590px;margin: 0 auto;position: relative; }
.popup-btn{ position: absolute;
width: 86%;
bottom: 0%;
left: 8%;
height: 12%;
cursor: pointer;}
.box {position: relative;}
.close {
position: absolute;
top: 0;
color: #fff;
font-size: 30px;
right: -50%;
cursor: pointer;
}
JS部分:
var currentdeg=0; //初始化角度
function get_ram(){
var willdeg=360+(parseInt(Math.random()*10)*36);
return willdeg;
}
// var speed=willdeg/5;
$('#lottery_btn').click(function(){
var willdeg = get_ram();
content.style.transform="rotate("+willdeg+"deg)";
var enddeg=content.style.transform.slice(7);
enddeg=willdeg-360;
console.log(enddeg);
var timer=setTimeout(function(){
if(45<enddeg&&enddeg<=135){
$(".popup").show(500);
$(".popup-btn").addClass('popup-real'); }
else if(135<enddeg&&enddeg<=225){
$(".popup").show(500);
$(".popup-btn").removeClass('popup-real');
}
else if(225<enddeg&&enddeg<=315){ $(".popup").show(500);
$(".popup-btn").addClass('popup-real'); }
else if(0<=enddeg&&enddeg<=45||315<enddeg&&enddeg<=360){
$(".popup").show(500);
$(".popup-btn").removeClass('popup-real'); }
},2000); }); $(".close").click(function(){
$(".popup").fadeOut(1000);
content.style.transform="rotate(0deg)";
});


此外滑到固定div的js代码为:
$(".demo,.real,.popup-btn").click(function(){
$('html,body').animate({scrollTop:$('#register').offset().top},2000);
});
添加加载进度条功能:
<div id="loading">
<img src="data:images/loading.gif">
</div>
<style>
div#loading {width: 100%;height: 100%;position: fixed;background:#fff;z-index: 100000;text-align: center;}
div#loading img{width: auto;position: fixed;top: 50%;}
</style>
<script>
$(window).on('load',function(){
$("#loading").hide();
});
<script>
Js实现抽奖转盘,和点击返回某个模块顶部的功能的更多相关文章
- 使用CSS3+jquery.js 实现微信抽奖转盘效果
上次发表了一篇 微信抽奖转盘活动-效果源码分析 最近想起了刚接到这个项目时第一时间脑海里迸出的解决方法 “CSS3”! 为什么不能用CSS3来实现呢? 所以我打算用CSS3来实现这个效果.并不需要依赖 ...
- C#保留2位小数几种场景总结 游标遍历所有数据库循环执行修改数据库的sql命令 原生js轮盘抽奖实例分析(幸运大转盘抽奖) javascript中的typeof和类型判断
C#保留2位小数几种场景总结 场景1: C#保留2位小数,.ToString("f2")确实可以,但是如果这个数字本来就小数点后面三位比如1.253,那么转化之后就会变成1.2 ...
- 抽奖转盘(jqueryrotate.js)
jqueryrotate.js抽奖转盘,使用方便,兼容各浏览器,效果如下图 <!DOCTYPE> <head> <meta http-equiv="Conten ...
- jquery.rotate.js可选抽奖次数和中奖内容的转盘抽奖demo
需求: 最多可以抽奖5次,而且,每次只会中“2000元理财金”或者“谢谢参与”,其它的不会抽中(哈哈,果然都是套路). 效果如下: 一.页面结构: <div class="g-cont ...
- 【Vue.js游戏机实战】- Vue.js实现大转盘抽奖总结
大家好!先上图看看本次案例的整体效果. 实现思路: Vue component实现大转盘组件,可以嵌套到任意要使用的页面. css3 transform控制大转盘抽奖过程的动画效果. 抽奖组件内使用钩 ...
- JS:九宫格抽奖转盘实例
工作需要,所以做了个抽奖转盘的插件,当然这里只做最简单的演示.可以用于取代一些flash抽奖程序. 机制说明: 1.通过定义lottery-unit来控制节点的个数及索引: 2.通过设置lottery ...
- js中点击返回顶部
window.scrollTo(0, 0);当点击返回顶部的时候调用这个方法即可 handleScrollTop(){ window.scrollTo(0, 0); }
- Html5-Canvas实现简易的抽奖转盘
###Html5实现抽奖转盘效果 1.实现的基本效果 2.主要的内容 html5中canvas标签的使用 jQueryRotate.js旋转插件 3.主要html代码 <body> < ...
- 利用java实现抽奖转盘(着重安全控制)
本文是针对jquery 实现抽奖转盘作者的一个补充(主要用java去实现转盘结果生成及存储,解决jquery 做法 非法用户采用模拟器实现改变转盘值的风险性),针对jQuery的具体实现,请看案例:h ...
- jquery实现抽奖转盘
用jquery通过配置参数实现抽奖转盘 1.html代码 <!DOCTYPE html> <html lang="zh-CN"> <head> ...
随机推荐
- C++ 简单实现shared_ptr
共享指针 管理指针的存储,提供有限的垃圾回收工具,并可能与其他对象共享该管理. shared_ptr类型的对象都能够获得指针的所有权并共享该所有权:一旦它们获得所有权,当最后一个所有者释放该所有权时, ...
- #线段树#洛谷 4428 [BJOI2018]二进制
题目 有一个长为 \(n\) 的二进制串,支持单个位置取反,对于这个二进制串的一个子区间, 求出其有多少位置不同的连续子串,满足在重新排列后(可包含前导0)是一个 3 的倍数. 分析 考虑对于单个位置 ...
- #动态规划,组合计数,树状数组,前缀和#F 简单计数题&K 最简单的题
先膜两位出题人 F 简单计数题 题目 有\(n\)个活动,预约期有\(k\)天,第\(j\)天YC可以获得\(a_j(1\leq a_j\leq n)\)张预约券, 他会在\(n\)个活动中等概率选择 ...
- #Every-SG#HDU 3595 GG and MM
题目 有\(n\)个游戏,每个游戏只要能进行就必须进行, 对于每个游戏有两堆石子,每次可以将数量多的中取出小堆石子数量的整数倍, 无法操作者为负,问先手是否必胜 分析 如果单个游戏最大操作次数为奇数次 ...
- XML 简介及用法详解
XML 是一种用于存储和传输数据的与软件和硬件无关的工具. 什么是XML? XML代表eXtensible Markup Language(可扩展标记语言).XML是一种与HTML非常相似的标记语言. ...
- 粗心的小红qsnctfwp
将原 apk 安装包后缀名修改为 zip 将其中的 classes3.dex 文件解压 使用 Notepad++ 或其他工具打开 classes3.dex,将第 2 行的 38 修改为 35 或 36 ...
- CentOS 6.5编译安装httpd-2.4.7
CentOS 6.5编译安装httpd-2.4.7 CentOS 编译安装 Apache 2.4 准备: [root@NFSServer ~]# yum groupinstall "Deve ...
- 重新整理 .net core 实践篇————防跨站脚本攻击[四十]
前言 简单整理一下跨站脚本攻击. 正文 攻击原理是这样子的: 这种攻击被攻击的面挺多的,比如说只要有一个可以让用户输入的注入脚本就都是一个问题. 给网站注入脚本 然后用户访问给网站注入的脚本 脚本里面 ...
- mysql 重新整理——sql 执行语句的顺序[五]
前言 盗图: 其实在复杂的语句中,需要我们逐步去分析,然后呢,我们了解一些优化器到底是如何帮我们优化的,就知道到底是mysql怎么执行代码. 我把以前的丢了,后续补全.
- 数据分布算法:hash+ 一致性 hash + redis cluster 的 hash slot
讲解分布式数据存储的核心算法,数据分布的算法 hash 算法 -> 一致性 hash 算法(memcached) -> redis cluster 的 hash slot 算法 用不同的算 ...