lottery.html 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336
  1. <!DOCTYPE html>
  2. <html lang="en" style="width: 100%">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>抽奖</title>
  8. <script src="js/jquery.min.js"></script>
  9. <script src="https://res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
  10. <script src="js/wechat.js"></script>
  11. <link rel="stylesheet" href="css/lottery2.css?v=2" type="text/css" />
  12. <script type="text/javascript">
  13. //从localstorage中取得ID
  14. var limit = 0;
  15. var id = localStorage.userId;
  16. var current = 0;
  17. var last = 0;
  18. var threshold = 0;
  19. var speed = 1;
  20. var enable = true;
  21. var src = null;
  22. var recordId = null;
  23. $(function () {
  24. //先在这里查看是否有id
  25. if(id == null || id == undefined || id == ""){
  26. window.location.href = "https://wx.ttkuaiban.com/minigame";
  27. }
  28. $.post("./user/getWxConfigParam?url=https://wx.ttkuaiban.com/minigame/lottery.html", {}, function(resp) {
  29. if (resp.code == 'error') {
  30. console.log(resp.code);
  31. }else{
  32. wx.config({
  33. debug: false,
  34. appId: 'wx749c84daac654e1e',
  35. timestamp: resp.data.timestamp,
  36. nonceStr: resp.data.noncestr,
  37. signature: resp.data.sign,
  38. jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone', 'showOptionMenu', 'hideAllNonBaseMenuItem', 'showAllNonBaseMenuItem']
  39. });
  40. wx.ready(function(){
  41. const share = {
  42. title: "一秒变大厨,为远方的朋友做道菜吧!",
  43. desc: "",
  44. imgUrl: "https://wx.ttkuaiban.com/minigame/images/share_picture.png",
  45. link: "https://wx.ttkuaiban.com/minigame/lottery.html",
  46. success: function() {
  47. $.post("./prize/luckDrawAddShare", {uid: id}, function(resp) {
  48. if (resp.code == 'error') {
  49. console.log(resp.code);
  50. }else{
  51. //分享之后前端限制可抽奖次数+1
  52. limit--;
  53. }
  54. });
  55. },
  56. cancel: function() {}
  57. };
  58. wx.onMenuShareAppMessage(share);
  59. wx.onMenuShareTimeline(share);
  60. wx.onMenuShareQQ(share);
  61. wx.onMenuShareQZone(share);
  62. wx.onMenuShareWeibo(share);
  63. });
  64. wx.error(function(res){
  65. console.log(res);
  66. });
  67. };
  68. });
  69. //进入和窗口缩放时重新设置内容位置
  70. setPosition();
  71. $(window).resize(function () {
  72. setPosition();
  73. });
  74. //获取
  75. $.post("./prize/luckDrawList", {}, function(resp) {
  76. if (resp.code == 'error') {
  77. console.log(resp.code);
  78. }else{
  79. for(let index in resp.data){
  80. $(".advertisement").append("<li>恭喜" + resp.data[index].nickName + "获得了" + resp.data[index].prize + "</li>")
  81. }
  82. }
  83. });
  84. //点击查看结果
  85. $(".check_result").click(function(){
  86. window.location.href = "result.html";
  87. })
  88. //点击抽奖
  89. $(".button").click(function () {
  90. if(enable == true){
  91. if(limit >= 1){
  92. alert("请再进行一次游戏获取抽奖机会");
  93. window.location.href = "index.html";
  94. }else{
  95. limit++;
  96. //获取抽奖结果
  97. $.post("./prize/luckDraw", {userId: id}, function(resp) {
  98. if (resp.code == 'error') {
  99. alert(resp.msg);
  100. }else{
  101. //进入不可点击状态
  102. enable = false;
  103. //设置初始速度
  104. speed = 60;
  105. recordId = resp.data.prizeRecord.id;
  106. //设置要中奖的位置 1.5没有 0十二瓶 4一升 2.6五百毫升 3书 7肥皂
  107. if(resp.data.prizeLevel == -1){
  108. var rand = Math.round(Math.random()*2);
  109. console.log(rand);
  110. if(rand <= 1){
  111. threshold = 1;
  112. }else{
  113. threshold = 5;
  114. }
  115. }else if(resp.data.prizeLevel == 0){
  116. threshold = 0;
  117. src = "images/reward_oil60_2.png";
  118. }else if(resp.data.prizeLevel == 1){
  119. threshold = 2;
  120. src = "images/reward_oil5_2.png";
  121. }else if(resp.data.prizeLevel == 2){
  122. threshold = 4;
  123. src = "images/reward_oil10_2.png";
  124. }else if(resp.data.prizeLevel == 3){
  125. threshold = 7;
  126. src = "images/reward_soap2.png";
  127. }else if(resp.data.prizeLevel == 4){
  128. threshold = 3;
  129. src = "images/reward_book2.png";
  130. }else{
  131. threshold = 1;
  132. }
  133. //配置移动次数
  134. last = 56 + threshold - current;
  135. setTimeout(function(){next(current)}, 1000);
  136. }
  137. });
  138. }
  139. }
  140. });
  141. //谢谢惠顾后点击的按钮
  142. $(".result_failed_button").click(function () {
  143. window.location.href = "index.html";
  144. //这里需要检查一下还有没有剩余次数,如果没有的话直接关闭mask,alert可以分享增加次数
  145. });
  146. //领取奖品按钮
  147. $(".result_success_button").click(function () {
  148. var name = $(".result_success_name").val();
  149. var phone = $(".result_success_phone").val();
  150. if(name == "" || phone == ""){
  151. alert("请填写完整信息");
  152. }else{
  153. $.post("./prize/luckDrawAddInfo", {
  154. id: recordId,
  155. phone: phone,
  156. userName: name
  157. }, function(resp) {
  158. if (resp.code == 'error') {
  159. console.log(resp.code);
  160. }else{
  161. alert("填写成功");
  162. $(".mask").hide();
  163. $(".success").hide();
  164. $(".result_success_title").hide();
  165. $(".result_success_logo").hide();
  166. $(".result_success_name").hide();
  167. $(".result_success_phone").hide();
  168. $(".result_success_button").hide();
  169. }
  170. });
  171. }
  172. });
  173. });
  174. //重新设置内容位置
  175. function setPosition() {
  176. $(".pool").css("top", $(document).width() / 1.9);
  177. $(".container").css("top", $(document).width() / 1.75).css("height", $(document).width() / 1.6);
  178. $(".item").css("height", $(".container").width() / 3.9);
  179. $(".title").css("top", $(".container").width() * 2.3);
  180. $(".check_result").css("top", $(".container").width() * 2.32);
  181. $(".tips").css("top", $(".container").width() * 2.42);
  182. $(".mask").css("height", $(document).height());
  183. $(".result_failed_button").css("top", $(".container").width() * 1.6);
  184. $(".result_success_title").css("top", $(".container").width() * 0.69);
  185. $(".result_success_logo").css("top", $(".container").width() * 0.9);
  186. $(".result_success_name").css("top", $(".container").width() * 1.35);
  187. $(".result_success_phone").css("top", $(".container").width() * 1.59);
  188. $(".result_success_button").css("top", $(".container").width() * 1.82);
  189. $(".case").css("top", $(".container").width() * 1.9);
  190. }
  191. //激活移动
  192. function next() {
  193. $(".item" + current).removeClass("active");
  194. $(".item" + (current + 1) % 8).addClass("active");
  195. current = (current + 1) % 8;
  196. //10以下开始减速
  197. if(last < 10){
  198. speed += 60;
  199. }
  200. //剩余次数8以下并且到了号时
  201. if(!(last-- < 8 && current == threshold)){
  202. setTimeout(function(){next()}, speed);
  203. }else{
  204. setTimeout(function(){
  205. if(threshold == 1 || threshold == 5){
  206. failed();
  207. }else{
  208. success();
  209. }
  210. enable = true;
  211. }, 1500);
  212. }
  213. }
  214. //中奖之后
  215. function success(){
  216. $(".mask").show();
  217. $(".success").show();
  218. $(".result_success_title").show();
  219. $(".result_success_logo").show();
  220. $(".result_success_name").show();
  221. $(".result_success_phone").show();
  222. $(".result_success_button").show();
  223. $(".result_success_logo").attr("src", src);
  224. }
  225. //谢谢惠顾
  226. function failed(){
  227. $(".mask").show();
  228. $(".failed").show();
  229. $(".result_failed_button").show();
  230. }
  231. //判断微信分享
  232. // document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
  233. // //发送给好友
  234. // WeixinJSBridge.on('menu:share:appmessage', function(argv){
  235. // $.post("./prize/luckDrawAddShare", {uid: id}, function(resp) {
  236. // if (resp.code == 'error') {
  237. // console.log(resp.code);
  238. // }else{
  239. // alert("分享成功");
  240. // }
  241. // });
  242. // });
  243. // //分享到朋友圈
  244. // WeixinJSBridge.on('menu:share:timeline', function(argv){
  245. // $.post("./prize/luckDrawAddShare", {uid: id}, function(resp) {
  246. // if (resp.code == 'error') {
  247. // console.log(resp.code);
  248. // }else{
  249. // alert("分享成功");
  250. // }
  251. // });
  252. // });
  253. // }, false);
  254. </script>
  255. </head>
  256. <body style="width: 100%">
  257. <img class="background" src="images/lottery_background_red.png">
  258. <img class="pool" src="images/lottery_pool.png">
  259. <div class="container">
  260. <img class="item item0" src="images/reward_oil60.png">
  261. <img class="item item1" src="images/reward_null.png">
  262. <img class="item item2" src="images/reward_oil5.png">
  263. <img class="item item7" src="images/reward_soap.png">
  264. <img class="item button" src="images/lottery_button.png">
  265. <img class="item item3" src="images/reward_book.png">
  266. <img class="item item6" src="images/reward_oil5.png">
  267. <img class="item item5" src="images/reward_null.png">
  268. <img class="item item4" src="images/reward_oil10.png">
  269. </div>
  270. <span class="title"><span style="color: #FF356B">活动</span>说明</span>
  271. <span class="tips">1.中奖者留下姓名和电话,在活动结束后会联系邮寄奖品;<br>
  272. 2.微博参与抽奖方式:<br>
  273. 关注@贝蒂斯橄榄油官方微博,转发或评论置顶微博并上传“游戏结果海报”。<br>
  274. 3.每人每天通过游戏获得两次抽奖机会,转发本页面额外获得一次抽奖机会。
  275. </span>
  276. <div class="case">
  277. <div class="part2" id="part2">
  278. <div id="scroll1">
  279. <ul class="advertisement">
  280. </ul>
  281. </div>
  282. <div id="scroll2"></div>
  283. </div>
  284. </div>
  285. <script type="text/javascript">
  286. var PartArea = document.getElementById('part2');
  287. var Scroll1 = document.getElementById('scroll1');
  288. var Scroll2 = document.getElementById('scroll2');
  289. Scroll2.innerHTML = Scroll1.innerHTML;
  290. function roll() {
  291. if(Scroll2.offsetHeight - PartArea.scrollTop <= 0) {
  292. PartArea.scrollTop -= Scroll1.offsetHeight;
  293. } else {
  294. PartArea.scrollTop++;
  295. }
  296. }
  297. var StopRoll = setInterval(roll, 60);
  298. PartArea.onmouseover = function () {
  299. clearInterval(StopRoll);
  300. }
  301. PartArea.onmouseout = function () {
  302. StopRoll = setInterval(roll, 60);
  303. }
  304. </script>
  305. <div class="mask" style="display: none;"></div>
  306. <img class="result success" src="images/result_success.png" style="display: none;">
  307. <p class="result_success_title" style="display: none;">输入个人信息进行领奖</p>
  308. <img class="result_success_logo" style="display: none;">
  309. <input class="result_success_name" type="text" placeholder="姓名" style="display: none;">
  310. <input class="result_success_phone" type="text" placeholder="手机号" style="display: none;">
  311. <img class="result_success_button" src="images/result_success_button.png" style="display: none;">
  312. <img class="result failed" src="images/result_failed.png" style="display: none;">
  313. <img class="result_failed_button" src="images/result_failed_button.png" style="display: none;">
  314. <span class="check_result">我的中奖结果</span>
  315. </body>
  316. </html>