You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

478 lines
13 KiB

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>建党百年</title>
  6. <meta name="keywords" content="keyword1,keyword2,keyword3">
  7. <meta name="description" content="this is my page">
  8. <meta name="content-type" content="text/html; charset=UTF-8">
  9. <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0">
  10. <script src="js/jquery-1.8.3.min.js" type="text/javascript" charset="utf-8"></script>
  11. <script src="js/comment.js" type="text/javascript" charset="utf-8"></script>
  12. <link rel="stylesheet" type="text/css" href="css/common.css" />
  13. <link rel="stylesheet" type="text/css" href="css/game3.css" />
  14. </head>
  15. <style type="text/css">
  16. .game3tips {
  17. position: absolute;
  18. z-index: 100;
  19. width: 100%;
  20. /* height: 100%; */
  21. text-align: center;
  22. line-height: 100%;
  23. color: white!important;
  24. font-size: .46rem!important;
  25. top: 3.7rem;
  26. }
  27. </style>
  28. <body>
  29. <div id="wrap">
  30. <div class="tipsNum"><img src="img/game3/firstIcon.png" /></div>
  31. <div class="titleIcon">
  32. <ul>
  33. <li><img src="img/success/suc1.png" /></li>
  34. <li><img src="img/success/suc2.png" /></li>
  35. <li><img src="img/game1/result.png" /></li>
  36. <li><img src="img/game1/result.png" /></li>
  37. <li><img src="img/game1/result.png" /></li>
  38. </ul>
  39. </div>
  40. <p class="game3tips">
  41. 请翻转图片将上方党的重要人物与下方名字对应!
  42. </p>
  43. <div class="cont_wrap">
  44. <ul class="faceList">
  45. </ul>
  46. </div>
  47. <div class="middleImg">
  48. <ul>
  49. <li>
  50. <img src="img/game3/fan/kuang.png" />
  51. </li>
  52. </ul>
  53. <ul>
  54. <li>
  55. <img src="img/game3/fan/kuang.png" />
  56. </li>
  57. </ul>
  58. <ul>
  59. <li>
  60. <img src="img/game3/fan/kuang.png" />
  61. </li>
  62. </ul>
  63. <ul>
  64. <li>
  65. <img src="img/game3/fan/kuang.png" />
  66. </li>
  67. </ul>
  68. <ul>
  69. <li>
  70. <img src="img/game3/fan/kuang.png" />
  71. </li>
  72. </ul>
  73. </div>
  74. <!--成功-->
  75. <div class="mask"></div>
  76. <div class="shoushi"><img src="img/shoushi/3.gif" /></div>
  77. <div class="success">
  78. <div class="sucImg">
  79. <div>
  80. <p class="text">恭喜获得第三枚徽章!</p>
  81. <p class="text textTime"></p>
  82. <p class="imgIcons"><img src="img/success/suc33.png" /></p>
  83. </div>
  84. </div>
  85. <div class="close"><img src="img/close.png" /></div>
  86. </div>
  87. <div class="deepBtn">进入第四关</div>
  88. <p class="imgIcon"><img src="img/success/suc33.png" /></p>
  89. </div>
  90. <audio id="bgmAudio" hidden="true" autoplay="autoplay">
  91. <source src="img/audio/game3Bgm.mp3" type="audio/mp3" />
  92. <!--您的浏览器不支持 audio 标签。-->
  93. </audio>
  94. <audio id="trueAudio" hidden="true">
  95. <source src="img/true.mp3" type="audio/mp3" />
  96. </audio>
  97. <audio id="falseAudio" hidden="true">
  98. <source src="img/false1.mp3" type="audio/mp3" />
  99. </audio>
  100. </body>
  101. </html>
  102. <script src="js/common.js" type="text/javascript" charset="utf-8"></script>
  103. <script type="text/javascript">
  104.   function audioAutoPlay(id) {
  105. var audio = document.getElementById(id),
  106. play = function () {
  107. audio.play();
  108. document.removeEventListener("touchstart", play, false);
  109. };
  110. audio.play();
  111. document.addEventListener("WeixinJSBridgeReady", function () {
  112. play();
  113. }, false);
  114. document.addEventListener('YixinJSBridgeReady', function () {
  115. play();
  116. }, false);
  117. document.addEventListener("touchstart", play, false);
  118. }
  119.     var url = location.href.split('?')[1]
  120. var audioState = url.split('=')[1];
  121. if (audioState == 'true') {
  122. audioAutoPlay('bgmAudio');
  123. }
  124. var imgArr = [0, 1, 2, 3, 4, 5, 6, 7, 8];
  125. var nameArr = [0, 1, 2, 3, 4, 5, 6, 7, 8];
  126. var trueArr = [];
  127. var tuArr = [
  128. "img/game3/fan/img11.png",
  129. "img/game3/fan/img22.png",
  130. "img/game3/fan/img33.png",
  131. "img/game3/fan/img44.png",
  132. "img/game3/fan/img55.png",
  133. "img/game3/fan/img66.png",
  134. "img/game3/fan/img77.png",
  135. "img/game3/fan/img88.png",
  136. "img/game3/fan/img99.png"
  137. ]
  138. var textArr = [
  139. "img/game3/fan/text11.png",
  140. "img/game3/fan/text22.png",
  141. "img/game3/fan/text33.png",
  142. "img/game3/fan/text44.png",
  143. "img/game3/fan/text55.png",
  144. "img/game3/fan/text66.png",
  145. "img/game3/fan/text77.png",
  146. "img/game3/fan/text88.png",
  147. "img/game3/fan/text99.png"
  148. ]
  149. var wordArr = [
  150. '彭德怀',
  151. '朱德',
  152. '贺龙',
  153. '聂荣臻',
  154. '刘伯承',
  155. '陈毅',
  156. '罗荣恒',
  157. '徐向前',
  158. '叶剑英'
  159. ]
  160. randArr(imgArr);
  161. var newArr = imgArr.slice(0, 5);
  162. var faceList = '';
  163. // var textList='';
  164. for(var i = 0; i <= 4; i++) {
  165. faceList += '<li class="faceItem" ><p class="backImg"><img data-id=' + newArr[i] + ' src="img/game3/fan/backImg.png" /></p><p class="fontImg"><img src="' + tuArr[newArr[i]] + '" /></p></li>'
  166. }
  167. randArr(newArr)
  168. trueArr = newArr;
  169. console.log(trueArr)
  170. for(var i = 0; i <= 4; i++) {
  171. faceList += '<li class="faceItem last" ><p class="backImg"><img data-id=' + newArr[i] + ' src="img/game3/fan/backText.png" /></p><p class="fontImg"><img src="' + textArr[newArr[i]] + '" /></p></li>'
  172. // trueArr.push(newArr[i])
  173. }
  174. $('.faceList').html(faceList)
  175. //手势隐藏
  176. var maskState1 = true
  177. $('.mask').on('touchstart', function() {
  178. if(maskState1) {
  179. fadeoutmask()
  180. maskState1 = false
  181. }
  182. })
  183. $('.game3tips').on('touchstart', function() {
  184. fadeoutmask()
  185. })
  186. function fadeoutmask() {
  187. $('.mask').fadeOut();
  188. $('.shoushi').fadeOut();
  189. $(".game3tips").fadeOut()
  190. }
  191. $('.shoushi').on('touchstart', function() {
  192. fadeoutmask()
  193. })
  194. //手势隐藏end
  195. var time = 0;
  196. var timeLength = setInterval(function() {
  197. time++;
  198. }, 1000)
  199. // var trueArr = [7, 9, 6, 8, 5];
  200. var start = -1;
  201. var end = null;
  202. var trueIndex = null;
  203. var count = 0;
  204. var clickIndex = [];
  205. var newTrueArr = [];
  206. var icond = $(".faceItem");
  207. icond.each(function(index) {
  208. $(this).on('touchstart', function(evt) {
  209. var e = event || evt;
  210. e.preventDefault(); //阻止其他事件
  211. // e.target.dataset.id
  212. $('.guize span').fadeOut()
  213. }).on('touchmove', function(evt) {
  214. var e = event || evt;
  215. e.preventDefault(); //阻止其他事件
  216. }).on('touchend', function(evt) {
  217. var e = event || evt;
  218. console.log(e)
  219. e.preventDefault(); //阻止其他事件
  220. if(clickIndex.indexOf($(this).index()) == -1) {
  221. $(this).find('p.backImg').addClass('backShow')
  222. $(this).find('p.fontImg').addClass('fontShow')
  223. clickIndex.push($(this).index());
  224. newTrueArr.push(e.target.dataset.id)
  225. // start = $(this).index();
  226. if(start == -1) {
  227. start = $(this).index();
  228. } else if($(this).index() <= 4 && start <= 4) {
  229. $('.faceList li').eq(start).find('p.backImg').removeClass('backShow');
  230. $('.faceList li').eq(start).find('p.fontImg').removeClass('fontShow');
  231. clickIndex.splice(getArrayIndex(clickIndex, start), 1);
  232. start = $(this).index();
  233. } else if($(this).index() > 4 && start > 4) {
  234. $('.faceList li').eq(start).find('p.backImg').removeClass('backShow');
  235. $('.faceList li').eq(start).find('p.fontImg').removeClass('fontShow');
  236. clickIndex.splice(getArrayIndex(clickIndex, start), 1);
  237. start = $(this).index();
  238. } else if(end == null) {
  239. end = $(this).index();
  240. trueIndex = e.target.dataset.id;
  241. if(newTrueArr.indexOf(e.target.dataset.id) == -1) {
  242. newTrueArr.push(e.target.dataset.id)
  243. }
  244. console.log(newTrueArr + 'newTrueArr')
  245. //判断是否是一对
  246. if(newTrueArr[newTrueArr.length - 1] == newTrueArr[newTrueArr.length - 2]) {
  247. var state = true;
  248. newTrueArr = [];
  249. } else {
  250. var state = false;
  251. newTrueArr = [];
  252. }
  253. if(state) {
  254. console.log(index)
  255. console.log(clickIndex);
  256. start = -1;
  257. newTrueArr = [];
  258. end = null;
  259. count++;
  260. if(count == 1) {
  261. var cont1 = '';
  262. setTimeout(function() {
  263. $('.faceList li').eq(clickIndex[0]).find('img').fadeOut(1000);
  264. $('.faceList li').eq(clickIndex[1]).find('img').fadeOut(1000);
  265. cont1 += '<li><p class="img"><img src="' + tuArr[trueIndex] + '" /></p><p class="text">' + wordArr[trueIndex] + '</p></li>'
  266. $('.middleImg ul').eq(count - 1).html(cont1);
  267. $('.middleImg ul').eq(count - 1).find('li').css('display', 'none')
  268. }, 1000);
  269. setTimeout(function() {
  270. $('.middleImg ul').eq(count - 1).find('li').fadeIn(1000)
  271. }, 1000);
  272. }
  273. if(count == 2) {
  274. var cont2 = '';
  275. setTimeout(function() {
  276. $('.faceList li').eq(clickIndex[2]).find('img').fadeOut(1000)
  277. $('.faceList li').eq(clickIndex[3]).find('img').fadeOut(1000)
  278. cont2 += '<li><p class="img"><img src="' + tuArr[trueIndex] + '" /></p><p class="text">' + wordArr[trueIndex] + '</p></li>'
  279. $('.middleImg ul').eq(count - 1).html(cont2);
  280. $('.middleImg ul').eq(count - 1).find('li').css('display', 'none')
  281. }, 1000);
  282. setTimeout(function() {
  283. $('.middleImg ul').eq(count - 1).find('li').fadeIn(1000).siblings().hide()
  284. }, 1000);
  285. }
  286. if(count == 3) {
  287. var cont3 = '';
  288. setTimeout(function() {
  289. $('.faceList li').eq(clickIndex[4]).find('img').fadeOut(1000)
  290. $('.faceList li').eq(clickIndex[5]).find('img').fadeOut(1000)
  291. cont3 += '<li><p class="img"><img src="' + tuArr[trueIndex] + '" /></p><p class="text">' + wordArr[trueIndex] + '</p></li>'
  292. $('.middleImg ul').eq(count - 1).html(cont3);
  293. $('.middleImg ul').eq(count - 1).find('li').css('display', 'none')
  294. }, 1000);
  295. setTimeout(function() {
  296. $('.middleImg ul').eq(count - 1).find('li').fadeIn(1000).siblings().hide()
  297. }, 1000);
  298. }
  299. if(count == 4) {
  300. var cont4 = '';
  301. setTimeout(function() {
  302. $('.faceList li').eq(clickIndex[6]).find('img').fadeOut(1000)
  303. $('.faceList li').eq(clickIndex[7]).find('img').fadeOut(1000)
  304. cont4 += '<li><p class="img"><img src="' + tuArr[trueIndex] + '" /></p><p class="text">' + wordArr[trueIndex] + '</p></li>'
  305. $('.middleImg ul').eq(count - 1).html(cont4);
  306. $('.middleImg ul').eq(count - 1).find('li').css('display', 'none')
  307. }, 1000);
  308. setTimeout(function() {
  309. $('.middleImg ul').eq(count - 1).find('li').fadeIn(1000).siblings().hide()
  310. }, 1000);
  311. }
  312. var trueAudio = document.getElementById('trueAudio');
  313. trueAudio.play();
  314. audioAutoPlay('trueAudio')
  315. if(count == 5) {
  316. var cont5 = '';
  317. setTimeout(function() {
  318. $('.faceList li').eq(clickIndex[8]).find('img').fadeOut(1000)
  319. $('.faceList li').eq(clickIndex[9]).find('img').fadeOut(1000)
  320. cont5 += '<li><p class="img"><img src="' + tuArr[trueIndex] + '" /></p><p class="text">' + wordArr[trueIndex] + '</p></li>'
  321. $('.middleImg ul').eq(count - 1).html(cont5);
  322. $('.middleImg ul').eq(count - 1).find('li').css('display', 'none')
  323. }, 1000);
  324. setTimeout(function() {
  325. $('.middleImg ul').eq(count - 1).find('li').fadeIn(1000).siblings().hide()
  326. }, 1000);
  327. setTimeout(function() {
  328. success();
  329. }, 3000)
  330. }
  331. } else {
  332. //恢复原样
  333. var startIndex = start;
  334. var endIndex = end;
  335. newTrueArr = [];
  336. setTimeout(function() {
  337. $('.faceList li').eq(startIndex).find('p.backImg').removeClass(
  338. 'backShow');
  339. $('.faceList li').eq(startIndex).find('p.fontImg').removeClass(
  340. 'fontShow');
  341. clickIndex.splice(getArrayIndex(clickIndex, startIndex), 1);
  342. $('.faceList li').eq(endIndex).find('p.backImg').removeClass(
  343. 'backShow');
  344. $('.faceList li').eq(endIndex).find('p.fontImg').removeClass(
  345. 'fontShow');
  346. clickIndex.splice(getArrayIndex(clickIndex, endIndex), 1);
  347. }, 500)
  348. start = -1;
  349. end = null;
  350. //错误提示音
  351. var falseAudio = document.getElementById('falseAudio');
  352. falseAudio.play();
  353. audioAutoPlay('falseAudio')
  354. }
  355. }
  356. }
  357. })
  358. })
  359. function success() {
  360. clearInterval(timeLength);
  361. // console.log(time)
  362. if(time > 3600) {
  363. var houre = parseInt(time / 3600);
  364. if(time % 3600 > 60) {
  365. var min = parseInt((time % 3600) / 60)
  366. } else {
  367. var min = 0;
  368. }
  369. var sec = (time % 3600) % 60
  370. $('.textTime').text('用时' + houre + '时' + min + '分' + sec + '秒')
  371. } else if(time > 60 && time < 3600) {
  372. $('.textTime').text('用时' + parseInt(time / 60) + '分' + (time % 60) + '秒')
  373. } else {
  374. $('.textTime').text('用时' + (time % 60) + '秒')
  375. }
  376. var showSate = false;
  377. maskState()
  378. $('.cont_wrap').css({
  379. 'position': 'absolute',
  380. 'z-index': '-9999'
  381. })
  382. $('.mask').fadeIn();
  383. $('.success').fadeIn();
  384. $('.imgIcon').fadeIn();
  385. $('.lines').css('z-index', '-1')
  386. $('#trueXian').css('display', 'none')
  387. $('.deepBtn').fadeIn()
  388. showSate = true;
  389. maskState()
  390. function maskState() {
  391. if(showSate) {
  392. $('.imgIcon').animate({
  393. 'top': '0',
  394. "right": '16%',
  395. 'width': '.98rem',
  396. 'height': '1.24rem',
  397. }, 2000)
  398. function yincang() {
  399. $('.titleIcon ul li').eq(1).css({
  400. 'visibility': 'hidden'
  401. })
  402. }
  403. setTimeout('yincang()', 2000)
  404. }
  405. }
  406. $('.deepBtn').click(function() {
  407. var url = location.href.split('?')[1];
  408. window.location.href = "game4.html?" + url
  409. })
  410. $('.close').on('touchstart', function() {
  411. $('.mask').fadeOut();
  412. $('.success .sucImg div').fadeOut();
  413. $('.success .close').fadeOut();
  414. })
  415. }
  416. function randArr(arr) {
  417. let i = arr.length;
  418. while(i) {
  419. let j = Math.floor(Math.random() * i--);
  420. [arr[j], arr[i]] = [arr[i], arr[j]];
  421. }
  422. return arr;
  423. }
  424. function getArrayIndex(arr, obj) {
  425. var i = arr.length;
  426. while(i--) {
  427. if(arr[i] === obj) {
  428. return i;
  429. }
  430. }
  431. return -1;
  432. }
  433. </script>