Compare commits
177 Commits
check-home
...
2023-hallo
Author | SHA1 | Date | |
---|---|---|---|
![]() |
79471dd2ac | ||
![]() |
80dedeaf09 | ||
![]() |
a24f388293 | ||
![]() |
1d04799e0f | ||
![]() |
3573a4c0cf | ||
![]() |
7021a6c155 | ||
![]() |
d701a5f149 | ||
![]() |
496b7e848a | ||
![]() |
c681deb908 | ||
![]() |
125e0bcf7d | ||
![]() |
82cc5213e4 | ||
![]() |
c4b39c5a18 | ||
![]() |
ceec614156 | ||
![]() |
5aa2a460f7 | ||
![]() |
7e88a45f1f | ||
![]() |
f6199e3d95 | ||
![]() |
ca8e62ccdb | ||
![]() |
b9c3d5dd4e | ||
![]() |
d6684a879b | ||
![]() |
b8b78d0193 | ||
![]() |
cdf47d250e | ||
![]() |
c50f5a182d | ||
![]() |
77d503017b | ||
![]() |
c6398e1541 | ||
![]() |
d70aa29d6b | ||
![]() |
5bbc1e5c68 | ||
![]() |
f4acb25b48 | ||
![]() |
a0abbaf6e9 | ||
![]() |
f41196c38d | ||
![]() |
5af361287b | ||
![]() |
8a8da3d3d2 | ||
![]() |
deab819661 | ||
![]() |
6e41101c36 | ||
![]() |
2808897418 | ||
![]() |
d4d9d9e2af | ||
![]() |
3e8e6a7c9a | ||
![]() |
32d8084ca6 | ||
![]() |
f325a561a2 | ||
![]() |
827b3540f2 | ||
![]() |
adbb636997 | ||
![]() |
038ecdb00e | ||
![]() |
48e06b9843 | ||
![]() |
b67250373b | ||
![]() |
5c9b2de593 | ||
![]() |
c424185f21 | ||
![]() |
4e0551c03c | ||
![]() |
3a71ccb6c0 | ||
![]() |
83ad69a4ba | ||
![]() |
11d087eff2 | ||
![]() |
a3de94198c | ||
![]() |
86dc8bc101 | ||
![]() |
854c7a5170 | ||
![]() |
8e0e2a1798 | ||
![]() |
c3ca2c8f33 | ||
![]() |
935dca1ced | ||
![]() |
3c0879357e | ||
![]() |
de77feec19 | ||
![]() |
4c206c94e6 | ||
![]() |
665f326967 | ||
![]() |
5c042369fc | ||
![]() |
269415685d | ||
![]() |
abd8deec4c | ||
![]() |
95416c0ef0 | ||
![]() |
b4fdf87984 | ||
![]() |
b03374eddb | ||
![]() |
b650b04101 | ||
![]() |
6619db011d | ||
![]() |
5c9597188f | ||
![]() |
4d49228ea6 | ||
![]() |
7c0ec3a053 | ||
![]() |
4f5a4bd2f1 | ||
![]() |
b4e5279dd1 | ||
![]() |
f00ef26431 | ||
![]() |
660cbde145 | ||
![]() |
bdf9d34ea7 | ||
![]() |
5a695caac4 | ||
![]() |
f26364ffef | ||
![]() |
9c3a66300e | ||
![]() |
b6fe002a9f | ||
![]() |
a41ff15608 | ||
![]() |
579a25a047 | ||
![]() |
b13763b0b3 | ||
![]() |
9e82ab9cfc | ||
![]() |
779dddffc8 | ||
![]() |
ac7a7b51d3 | ||
![]() |
e2595fbb11 | ||
![]() |
edd003ceb4 | ||
![]() |
06d2f79d49 | ||
![]() |
b2b2cbe10d | ||
![]() |
bb48955bc6 | ||
![]() |
e90f2fcccb | ||
![]() |
cda5b1a2e7 | ||
![]() |
8963f2228d | ||
![]() |
777cba90bd | ||
![]() |
7c9c75b9ae | ||
![]() |
c62c02655a | ||
![]() |
b522baca60 | ||
![]() |
e72bcc1ce1 | ||
![]() |
bb2784dae7 | ||
![]() |
6983b611f6 | ||
![]() |
96fc251f09 | ||
![]() |
bb2c2b44cb | ||
![]() |
ef6bcac4e9 | ||
![]() |
52925e948b | ||
![]() |
43736ecd86 | ||
![]() |
63c10b4e2a | ||
![]() |
4a87f8e70f | ||
![]() |
d06a9136cc | ||
![]() |
3e9a323e77 | ||
![]() |
192846f665 | ||
![]() |
04ec4e1213 | ||
![]() |
d4edc4d7f9 | ||
![]() |
33b327ef08 | ||
![]() |
c402e91b4b | ||
![]() |
e5bc021b76 | ||
![]() |
7ad353af3a | ||
![]() |
6ef6df6bd5 | ||
![]() |
3b2d5f3ec8 | ||
![]() |
b23b00110b | ||
![]() |
effa4fc182 | ||
![]() |
fda137edd4 | ||
![]() |
104c2a5ea9 | ||
![]() |
9c8dcfc5bc | ||
![]() |
59dfb185c7 | ||
![]() |
f9bf2c5473 | ||
![]() |
cbbe553bf0 | ||
![]() |
3f314a647b | ||
![]() |
775a68a23c | ||
![]() |
46db54d18b | ||
![]() |
23630c40b9 | ||
![]() |
c9b16d9fac | ||
![]() |
9e345cf51a | ||
![]() |
3d0df56d13 | ||
![]() |
aeba089ded | ||
![]() |
50223def70 | ||
![]() |
6d251a0399 | ||
![]() |
673005f471 | ||
![]() |
b9c7691b98 | ||
![]() |
0c23babc9d | ||
![]() |
bf6f941752 | ||
![]() |
2f88fdc21d | ||
![]() |
661db811c0 | ||
![]() |
7747ee7e93 | ||
![]() |
c625084bbb | ||
![]() |
aaf2b2f6ed | ||
![]() |
be4a1e09b2 | ||
![]() |
47864dabdb | ||
![]() |
8f5bd66761 | ||
![]() |
7351a4b76d | ||
![]() |
6b16354f64 | ||
![]() |
1b3986bcf3 | ||
![]() |
c19d1c92a2 | ||
![]() |
f1badb8d03 | ||
![]() |
131a276e58 | ||
![]() |
f594d0de0c | ||
![]() |
2c0f58f815 | ||
![]() |
844dc5c831 | ||
![]() |
f9886b9089 | ||
![]() |
733ab19c71 | ||
![]() |
80bea3e94a | ||
![]() |
f937063d9b | ||
![]() |
cdc8f2290c | ||
![]() |
296a640744 | ||
![]() |
c41e8dd980 | ||
![]() |
7a21b824ab | ||
![]() |
1148a0753e | ||
![]() |
3c57f4e780 | ||
![]() |
d300b7a056 | ||
![]() |
e47906fd91 | ||
![]() |
c0dfb7c41b | ||
![]() |
daf57dd1ad | ||
![]() |
c6df9a0872 | ||
![]() |
180d64064a | ||
![]() |
518bac9298 | ||
![]() |
9974ad913c | ||
![]() |
609dea5884 | ||
![]() |
8fba10d4d5 |
1765
view/peko/activity/2023-halloween/css/index.css
Normal file
1814
view/peko/activity/2023-halloween/css/index.scss
Normal file
13
view/peko/activity/2023-halloween/css/swiper-bundle.min.css
vendored
Normal file
BIN
view/peko/activity/2023-halloween/images/Pub_qp.png
Normal file
After Width: | Height: | Size: 38 KiB |
BIN
view/peko/activity/2023-halloween/images/active.png
Normal file
After Width: | Height: | Size: 4.6 KiB |
BIN
view/peko/activity/2023-halloween/images/active1.png
Normal file
After Width: | Height: | Size: 6.3 KiB |
BIN
view/peko/activity/2023-halloween/images/active2.png
Normal file
After Width: | Height: | Size: 6.2 KiB |
BIN
view/peko/activity/2023-halloween/images/alltask.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
view/peko/activity/2023-halloween/images/box1.png
Normal file
After Width: | Height: | Size: 6.1 KiB |
BIN
view/peko/activity/2023-halloween/images/box2.png
Normal file
After Width: | Height: | Size: 6.2 KiB |
BIN
view/peko/activity/2023-halloween/images/box3.png
Normal file
After Width: | Height: | Size: 6.4 KiB |
BIN
view/peko/activity/2023-halloween/images/boxBig1.svga
Normal file
BIN
view/peko/activity/2023-halloween/images/boxBig2.svga
Normal file
BIN
view/peko/activity/2023-halloween/images/boxBig3.svga
Normal file
BIN
view/peko/activity/2023-halloween/images/boxOpen1.png
Normal file
After Width: | Height: | Size: 5.7 KiB |
BIN
view/peko/activity/2023-halloween/images/boxOpen2.png
Normal file
After Width: | Height: | Size: 5.6 KiB |
BIN
view/peko/activity/2023-halloween/images/boxOpen3.png
Normal file
After Width: | Height: | Size: 5.9 KiB |
BIN
view/peko/activity/2023-halloween/images/boxText.png
Normal file
After Width: | Height: | Size: 5.7 KiB |
BIN
view/peko/activity/2023-halloween/images/box_pub.png
Normal file
After Width: | Height: | Size: 235 KiB |
BIN
view/peko/activity/2023-halloween/images/box_pubGift1.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
view/peko/activity/2023-halloween/images/box_pubGift2.png
Normal file
After Width: | Height: | Size: 53 KiB |
BIN
view/peko/activity/2023-halloween/images/box_pubGift3.png
Normal file
After Width: | Height: | Size: 84 KiB |
BIN
view/peko/activity/2023-halloween/images/box_pub_Title1.png
Normal file
After Width: | Height: | Size: 5.5 KiB |
BIN
view/peko/activity/2023-halloween/images/box_pub_Title2.png
Normal file
After Width: | Height: | Size: 5.0 KiB |
BIN
view/peko/activity/2023-halloween/images/box_pub_Title3.png
Normal file
After Width: | Height: | Size: 5.2 KiB |
BIN
view/peko/activity/2023-halloween/images/box_pub_ul_liBg.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
view/peko/activity/2023-halloween/images/candyTitle.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
view/peko/activity/2023-halloween/images/dayTab.png
Normal file
After Width: | Height: | Size: 4.9 KiB |
BIN
view/peko/activity/2023-halloween/images/dayTabActive.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
view/peko/activity/2023-halloween/images/dayTask.png
Normal file
After Width: | Height: | Size: 2.7 KiB |
BIN
view/peko/activity/2023-halloween/images/dice0.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
BIN
view/peko/activity/2023-halloween/images/dice1.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
BIN
view/peko/activity/2023-halloween/images/dice2.png
Normal file
After Width: | Height: | Size: 5.0 KiB |
BIN
view/peko/activity/2023-halloween/images/dice3.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
BIN
view/peko/activity/2023-halloween/images/dice4.png
Normal file
After Width: | Height: | Size: 5.3 KiB |
BIN
view/peko/activity/2023-halloween/images/dice5.png
Normal file
After Width: | Height: | Size: 5.5 KiB |
BIN
view/peko/activity/2023-halloween/images/dice6.png
Normal file
After Width: | Height: | Size: 5.8 KiB |
BIN
view/peko/activity/2023-halloween/images/diceBox.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
view/peko/activity/2023-halloween/images/diceLeftBut.png
Normal file
After Width: | Height: | Size: 6.2 KiB |
BIN
view/peko/activity/2023-halloween/images/diceQP.png
Normal file
After Width: | Height: | Size: 7.6 KiB |
BIN
view/peko/activity/2023-halloween/images/diceRightBut.png
Normal file
After Width: | Height: | Size: 6.0 KiB |
BIN
view/peko/activity/2023-halloween/images/gift1.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
view/peko/activity/2023-halloween/images/gift2.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
view/peko/activity/2023-halloween/images/giftBox.png
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
view/peko/activity/2023-halloween/images/gui.png
Normal file
After Width: | Height: | Size: 5.2 KiB |
BIN
view/peko/activity/2023-halloween/images/gxBg.png
Normal file
After Width: | Height: | Size: 76 KiB |
BIN
view/peko/activity/2023-halloween/images/header.png
Normal file
After Width: | Height: | Size: 161 KiB |
BIN
view/peko/activity/2023-halloween/images/line.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
BIN
view/peko/activity/2023-halloween/images/listRuleBg.png
Normal file
After Width: | Height: | Size: 837 KiB |
BIN
view/peko/activity/2023-halloween/images/listRuleText1.png
Normal file
After Width: | Height: | Size: 113 KiB |
BIN
view/peko/activity/2023-halloween/images/listRuleText2.png
Normal file
After Width: | Height: | Size: 115 KiB |
BIN
view/peko/activity/2023-halloween/images/listRuletitle1.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
view/peko/activity/2023-halloween/images/listRuletitle2.png
Normal file
After Width: | Height: | Size: 6.4 KiB |
BIN
view/peko/activity/2023-halloween/images/listTitle1.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
view/peko/activity/2023-halloween/images/listTitle2.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
view/peko/activity/2023-halloween/images/logo.png
Normal file
After Width: | Height: | Size: 21 KiB |
BIN
view/peko/activity/2023-halloween/images/no1.png
Normal file
After Width: | Height: | Size: 4.7 KiB |
BIN
view/peko/activity/2023-halloween/images/no2.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
view/peko/activity/2023-halloween/images/no3.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
view/peko/activity/2023-halloween/images/noBg1.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
view/peko/activity/2023-halloween/images/noBg2.png
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
view/peko/activity/2023-halloween/images/noBg3.png
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
view/peko/activity/2023-halloween/images/openBox1.svga
Normal file
BIN
view/peko/activity/2023-halloween/images/openBox2.svga
Normal file
BIN
view/peko/activity/2023-halloween/images/openBox3.svga
Normal file
BIN
view/peko/activity/2023-halloween/images/page1.png
Normal file
After Width: | Height: | Size: 220 KiB |
BIN
view/peko/activity/2023-halloween/images/page2.png
Normal file
After Width: | Height: | Size: 91 KiB |
BIN
view/peko/activity/2023-halloween/images/page3.png
Normal file
After Width: | Height: | Size: 52 KiB |
BIN
view/peko/activity/2023-halloween/images/pubBut.png
Normal file
After Width: | Height: | Size: 6.7 KiB |
BIN
view/peko/activity/2023-halloween/images/qp.png
Normal file
After Width: | Height: | Size: 4.7 KiB |
BIN
view/peko/activity/2023-halloween/images/record_box.png
Normal file
After Width: | Height: | Size: 61 KiB |
BIN
view/peko/activity/2023-halloween/images/road.png
Normal file
After Width: | Height: | Size: 91 KiB |
BIN
view/peko/activity/2023-halloween/images/rule_bg.png
Normal file
After Width: | Height: | Size: 98 KiB |
BIN
view/peko/activity/2023-halloween/images/rule_icon.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
view/peko/activity/2023-halloween/images/rule_iconList.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
view/peko/activity/2023-halloween/images/sz.svga
Normal file
BIN
view/peko/activity/2023-halloween/images/tab1.png
Normal file
After Width: | Height: | Size: 6.8 KiB |
BIN
view/peko/activity/2023-halloween/images/tab2.png
Normal file
After Width: | Height: | Size: 6.7 KiB |
BIN
view/peko/activity/2023-halloween/images/task.png
Normal file
After Width: | Height: | Size: 5.0 KiB |
BIN
view/peko/activity/2023-halloween/images/taskBut.png
Normal file
After Width: | Height: | Size: 4.0 KiB |
BIN
view/peko/activity/2023-halloween/images/taskButActive.png
Normal file
After Width: | Height: | Size: 5.0 KiB |
BIN
view/peko/activity/2023-halloween/images/taskText.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
view/peko/activity/2023-halloween/images/taskTitle.png
Normal file
After Width: | Height: | Size: 9.6 KiB |
BIN
view/peko/activity/2023-halloween/images/timeActive.png
Normal file
After Width: | Height: | Size: 2.9 KiB |
BIN
view/peko/activity/2023-halloween/images/topBoxBg.png
Normal file
After Width: | Height: | Size: 48 KiB |
BIN
view/peko/activity/2023-halloween/images/travel/back.png
Normal file
After Width: | Height: | Size: 4.2 KiB |
BIN
view/peko/activity/2023-halloween/images/xx.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
view/peko/activity/2023-halloween/images/zg.png
Normal file
After Width: | Height: | Size: 37 KiB |
351
view/peko/activity/2023-halloween/index.html
Normal file
@@ -0,0 +1,351 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>萬聖節嘉年華</title>
|
||||
<link rel="stylesheet" href="../../common/css/reset.css">
|
||||
<link rel="stylesheet" href="./css/swiper-bundle.min.css">
|
||||
<link rel="stylesheet" href="./css/index.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!-- 頂部返回 -->
|
||||
<div class="back">
|
||||
<img src="./images/travel/back.png" alt="">
|
||||
</div>
|
||||
<!-- 主視覺 -->
|
||||
<div class="header">
|
||||
<div class="rule_icon">活動規則></div>
|
||||
</div>
|
||||
<!-- 萬聖節活動禮物 -->
|
||||
<div class="giftBox">
|
||||
<div class="swiper">
|
||||
<div class="swiper-wrapper">
|
||||
<div class="swiper-slide">
|
||||
<img src="./images/gift1.png" alt="">
|
||||
</div>
|
||||
<div class="swiper-slide">
|
||||
<img src="./images/gift2.png" alt="">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- pages1 -->
|
||||
<div class="page1">
|
||||
<!-- 蒙層-->
|
||||
<div class="mc">
|
||||
<div class="mc_in">
|
||||
<p>送出/收到萬聖福袋</p>
|
||||
<p class="p2">可解鎖玩法</p>
|
||||
<div class="but">去完成</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 頁面主切換 -->
|
||||
<div class="tab">
|
||||
<div class="tab tab1 active1"></div>
|
||||
<div class="tab tab2"></div>
|
||||
</div>
|
||||
<!-- 任務玩法切換 -->
|
||||
<div class="switch">
|
||||
<div class="active">萬聖地圖</div>
|
||||
<div>糖果任務</div>
|
||||
</div>
|
||||
<!-- 我的糖果 -->
|
||||
<div class="myCandy">我的糖果券:0</div>
|
||||
<!-- 氣泡 -->
|
||||
<div class="qp">
|
||||
<p>升級寶箱</p>
|
||||
<p>贏限定禮物</p>
|
||||
</div>
|
||||
<!-- 糖果標題 -->
|
||||
<img src="./images/candyTitle.png" alt="" class="candytitle">
|
||||
<!-- 展示寶箱 -->
|
||||
<img src="./images/box3.png" alt="" class="showBox">
|
||||
<!-- 寶箱三個 -->
|
||||
<div class="boxs boxs1"><b>初級寶箱</b></div>
|
||||
<div class="boxs boxs2"><b>中級寶箱</b></div>
|
||||
<div class="boxs boxs3"><b>高級寶箱</b></div>
|
||||
<!-- 寶箱文案 -->
|
||||
<img src="./images/boxText.png" alt="" class="boxText">
|
||||
<!-- 兩條線 -->
|
||||
<div class="candyLine1"></div>
|
||||
<div class="candyLine2"></div>
|
||||
<!-- 地圖路線 -->
|
||||
<div class="road">
|
||||
<!-- 鬼 -->
|
||||
<img src="./images/gui.png" alt="" class="gui">
|
||||
<!-- 靜態寶箱 -->
|
||||
<img src="./images/box1.png" alt="" class="boxImg boxImg1 boxImgs4">
|
||||
<img src="./images/box1.png" alt="" class="boxImg boxImg2 boxImgs8">
|
||||
<img src="./images/box1.png" alt="" class="boxImg boxImg3 boxImgs13">
|
||||
<img src="./images/box1.png" alt="" class="boxImg boxImg4 boxImgs18">
|
||||
<img src="./images/box1.png" alt="" class="boxImg boxImg5 boxImgs22">
|
||||
<img src="./images/box1.png" alt="" class="boxImg boxImg6 boxImgs26">
|
||||
<img src="./images/box1.png" alt="" class="boxImg boxImg7 boxImgs30">
|
||||
<!-- 寶箱動效 -->
|
||||
<div class="boxImgSvgaA boxImgSvga1">
|
||||
<div class="boxImgSvga_in1"></div>
|
||||
</div>
|
||||
<div class="boxImgSvgaB boxImgSvga2">
|
||||
<div class="boxImgSvga_in2"></div>
|
||||
</div>
|
||||
<div class="boxImgSvgaC boxImgSvga3">
|
||||
<div class="boxImgSvga_in3"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 骰子 -->
|
||||
<div class="diceBox">
|
||||
<!-- 氣泡 -->
|
||||
<img src="./images/diceQP.png" alt="" class="diceQP">
|
||||
<!-- 動效骰子 -->
|
||||
<div class="diceSvga"></div>
|
||||
<!-- 骰子 -->
|
||||
<img src="./images/dice1.png" alt="" class="dice">
|
||||
<div class="diceLeftBut">寶箱開啟記錄</div>
|
||||
<div class="diceRightBut">點亮全部寶箱</div>
|
||||
<p>單次消耗糖果券*1</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- pages2 -->
|
||||
<div class="page2">
|
||||
<!-- 頁面主切換 -->
|
||||
<div class="tab">
|
||||
<div class="tab tab1 active1"></div>
|
||||
<div class="tab tab2"></div>
|
||||
</div>
|
||||
<!-- 任務玩法切換 -->
|
||||
<div class="switch">
|
||||
<div>萬聖地圖</div>
|
||||
<div class="active">糖果任務</div>
|
||||
</div>
|
||||
<!-- 文案 -->
|
||||
<img src="./images/taskText.png" alt="" class="taskText">
|
||||
<!-- 任務標題 -->
|
||||
<img src="./images/taskTitle.png" alt="" class="taskTitle">
|
||||
<!-- 我的糖果 -->
|
||||
<div class="myCandy">我的糖果券:0</div>
|
||||
<!-- 每日任務 -->
|
||||
<img src="./images/dayTask.png" alt="" class="dayTask">
|
||||
<!-- 循環任務 -->
|
||||
<img src="./images/alltask.png" alt="" class="alltask">
|
||||
<!-- 任務列錶 -->
|
||||
<div class="task task1">
|
||||
<p>登錄活動頁(0/1)</p>
|
||||
<div class="but">去完成</div>
|
||||
</div>
|
||||
<div class="task task2">
|
||||
<p>在任意直播間停留</p>
|
||||
<div class="lineBox">
|
||||
|
||||
<div class="line">0/90</div>
|
||||
<span class="sp1"></span>
|
||||
<span class="sp2"></span>
|
||||
<span class="sp3"></span>
|
||||
<b class="b1">+1糖果券</b>
|
||||
<b class="b2">+1糖果券</b>
|
||||
<b class="b3">+1糖果券</b>
|
||||
<b class="b4">30分鐘</b>
|
||||
<b class="b5">60分鐘</b>
|
||||
<b class="b6">90分鐘</b>
|
||||
</div>
|
||||
<div class="but">去完成</div>
|
||||
</div>
|
||||
<div class="task task3">
|
||||
<p>【星级厨房】累计投入满1000钻石获得<i>糖果券*1</i></p>
|
||||
<b>今日已獲得<i>0張</i></b>
|
||||
<div class="but">去完成</div>
|
||||
</div>
|
||||
<div class="task task4">
|
||||
<p>每送出万圣限定礼物满1000钻获得 <i>糖果券*1</i></p>
|
||||
<b>今日已獲得<i>0張</i></b>
|
||||
<div class="but">去完成</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- page3 -->
|
||||
<div class="page3">
|
||||
<!-- 頁面主切換 -->
|
||||
<div class="tab">
|
||||
<div class="tab tab1 "></div>
|
||||
<div class="tab tab2 active2"></div>
|
||||
</div>
|
||||
<!-- 任務玩法切換 -->
|
||||
<div class="listTab">
|
||||
<div class="active">尖叫榜</div>
|
||||
<div>驚喜榜</div>
|
||||
</div>
|
||||
<!-- 規則icon -->
|
||||
<div class="rule_icon">榜單獎勵></div>
|
||||
<!-- 日榜總榜切換 -->
|
||||
<div class="dayTab">
|
||||
<div class="active">日榜</div>
|
||||
<div>總榜</div>
|
||||
</div>
|
||||
<!-- 榜單標題 -->
|
||||
<img src="./images/listTitle1.png" alt="" class="listTitle">
|
||||
<!-- 日期 -->
|
||||
<div class="time">
|
||||
<div class="active"></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
</div>
|
||||
<!-- 前三 -->
|
||||
<div class="topBox">
|
||||
<div class="no1">
|
||||
<img src="./images/noBg1.png" alt="" class="noBg">
|
||||
<img src="./images/no1.png" alt="" class="noImg">
|
||||
<img src="./images/logo.png" alt="" class="tx">
|
||||
<p>用戶名字</p>
|
||||
<b>尖叫值:xxx</b>
|
||||
</div>
|
||||
<div class="no2">
|
||||
<img src="./images/noBg2.png" alt="" class="noBg">
|
||||
<img src="./images/no2.png" alt="" class="noImg">
|
||||
<img src="./images/logo.png" alt="" class="tx">
|
||||
<p>用戶名字</p>
|
||||
<b>尖叫值:xxx</b>
|
||||
</div>
|
||||
<div class="no3">
|
||||
<img src="./images/noBg3.png" alt="" class="noBg">
|
||||
<img src="./images/no3.png" alt="" class="noImg">
|
||||
<img src="./images/logo.png" alt="" class="tx">
|
||||
<p>用戶名字</p>
|
||||
<b>尖叫值:xxx</b>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 非前三 -->
|
||||
<ul class="lists">
|
||||
<li>
|
||||
<div class="num">4</div>
|
||||
<img src="./images/logo.png" alt="" class="tx">
|
||||
<div class="nick">xxx</div>
|
||||
<div class="score">尖叫值:0</div>
|
||||
</li>
|
||||
</ul>
|
||||
<!-- 自己榜單 -->
|
||||
<div class="my">
|
||||
<div class="li">
|
||||
<div class="num">4</div>
|
||||
<img src="./images/logo.png" alt="" class="tx">
|
||||
<div class="nick">xxx</div>
|
||||
<div class="score">尖叫值:0</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 活動規則 -->
|
||||
<div class="rule">
|
||||
<div class="rule_in">
|
||||
<div class="cen">
|
||||
<p>
|
||||
一、活動時間:<br>
|
||||
2023年10月27日12:00:00-2023年11月2日23:59:59
|
||||
</p>
|
||||
<p>二、禮物上新:<br>
|
||||
活動期間將限時上架5款萬聖新限定禮物;1款萬聖限定福袋</p>
|
||||
<p>三、活動攻略<br>
|
||||
萬聖地圖<br>
|
||||
1.送出≥1的萬聖限定福袋解鎖萬聖地圖<br>
|
||||
2.收到≥5的萬聖限定福袋解鎖萬聖地圖<br>
|
||||
3.地圖升級詳情查看升級條件和獎勵內容<br>
|
||||
4.行走到寶箱位置可獲得獎勵,非寶箱位置無獎勵,若剛好走到起點也可獲得獎勵;<br>
|
||||
糖果任務<br>
|
||||
1.活動期間完成每日任務和循環任務領取糖果券;<br>
|
||||
2.每日任務0點刷新,完成後進入活動頁領取獎勵;<br>
|
||||
3.任務完成後,任務獎勵自動發放;</p>
|
||||
|
||||
<p>四、萬聖榜單<br>
|
||||
驚喜榜:<br>
|
||||
1.活動期間內,收到普通禮物可增加驚喜值,10鑽=1驚喜值,收到萬聖限定禮物10鑽=3驚喜值;<br>
|
||||
2.普通禮物包含禮物面闆和背包禮物;<br>
|
||||
3.大頭號不參與榜單活動排名;<br>
|
||||
4.靚號獎勵A≠B≠C≠0,不可轉贈,請聯繫客服領取;<br>
|
||||
尖叫榜<br>
|
||||
1.活動期間內,贈送普通禮物可增加尖叫值,10鑽=1尖叫值,贈送萬聖限定禮物10鑽=3尖叫值;<br>
|
||||
2.普通禮物包含禮物面闆和背包禮物;<br>
|
||||
3.大頭號不參與榜單活動排名;<br>
|
||||
4.靚號獎勵A≠B≠C≠0,不可轉贈,請聯繫客服領取;<br></p>
|
||||
<p>五、本活動最終解釋權歸Piko所有,本活動以及獎勵與Google/蘋果公司無關</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 榜單規則 -->
|
||||
<div class="listRule">
|
||||
<div class="listRule_in">
|
||||
<img src="./images/listRuletitle1.png" alt="" class="listRuletitle">
|
||||
<div class="box">
|
||||
<img src="./images/listRuleText1.png" alt="listRuleText">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 初級中級高級寶箱彈窗 -->
|
||||
<div class="box_pub">
|
||||
<div class="box_pub_in">
|
||||
<img src="./images/box_pub_Title1.png" alt="" class="box_pub_Title">
|
||||
<p class="p1">活動期間送出萬聖福袋*1</p>
|
||||
<p class="p2">或</p>
|
||||
<p class="p3">活動期間收到萬聖福袋*5</p>
|
||||
<ul class="box_pub_ul">
|
||||
<!-- <li>
|
||||
<img src="./images/logo.png" alt="" class="gift">
|
||||
<p>黑貓戀人頭飾</p>
|
||||
<b>(30天)</b>
|
||||
</li> -->
|
||||
<li class="li1"></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 恭喜獲得彈窗 -->
|
||||
<div class="gx">
|
||||
<div class="gx_in">
|
||||
<ul class="gxBox">
|
||||
<li>
|
||||
<img src="./images/logo.png" alt="" class="gift">
|
||||
<p>xxx頭飾*1天</p>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="but">收下</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 活動结束 -->
|
||||
<div class="endActivity">
|
||||
<div class="endActivity_in">
|
||||
<p>該活動已結束</p>
|
||||
<div class="but">查看榜單</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 糟糕未獲得獎勵 -->
|
||||
<div class="zg">
|
||||
<img src="./images/zg.png" alt="" class="zg_in">
|
||||
</div>
|
||||
<!-- 寶箱記錄 -->
|
||||
<div class="record_box">
|
||||
<div class="record_box_in">
|
||||
<ul>
|
||||
<li>
|
||||
<div class="left">
|
||||
<p>2023/10/23</p>
|
||||
<b>23:45:05</b>
|
||||
</div>
|
||||
<div class="right">xxxx禮物*1</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
<script src="../../common/js/flexible.js"></script>
|
||||
<script src="../../common/js/jquery-3.2.1.min.js"></script>
|
||||
<script src="../../common/js/common2.js"></script>
|
||||
<script src="../../common/js/layer.js"></script>
|
||||
<script src="../../common/js/vconsole.min.js"></script>
|
||||
<script src="../../common/js/svga.min.js"></script>
|
||||
<script src="./js/swiper-bundle.min.js"></script>
|
||||
<script src="../../common/js/route-constant.js"></script>
|
||||
<script src="./js/wow.js"></script>
|
||||
<script src="./js/index.js"></script>
|
738
view/peko/activity/2023-halloween/js/index.js
Normal file
@@ -0,0 +1,738 @@
|
||||
let urlPrefix = getUrlPrefix()
|
||||
let browser = checkVersion()
|
||||
let env = EnvCheck();
|
||||
if (env == 'test') {
|
||||
new VConsole();
|
||||
}
|
||||
var formalUrl = 'https://api.hfighting.com'; // 正式环境
|
||||
var testUrls = 'http://beta.api.pekolive.com'; // 测试环境
|
||||
// 封裝layer消息提醒框
|
||||
let layerIndex
|
||||
const showLoading = (content = '加載中...') => {
|
||||
layer.open({
|
||||
type: 2,
|
||||
shadeClose: false,
|
||||
content,
|
||||
success (e) {
|
||||
layerIndex = $(e).attr('index')
|
||||
}
|
||||
})
|
||||
}
|
||||
const hideLoading = (index) => {
|
||||
layer.close(index)
|
||||
}
|
||||
const toastMsg = (content = '操作完成', time = 2) => {
|
||||
layer.open({
|
||||
content,
|
||||
time,
|
||||
skin: 'msg'
|
||||
})
|
||||
}
|
||||
var leftArr = ['3.6rem', '2.5rem', '1.4rem', '0.3rem', '0.3rem', '0.3rem', '1.4rem', '2.5rem', '2.5rem', '2.5rem', '1.4rem', '0.3rem', '0.3rem', '0.3rem', '0.3rem', '1.4rem', '2.5rem', '2.5rem', '3.6rem', '4.7rem', '4.7rem', '5.8rem', '6.9rem', '6.9rem', '6.9rem', '5.8rem', '5.8rem', '5.8rem', '6.9rem', '6.9rem', '6.9rem', '5.8rem', '4.7rem', '3.6rem'];
|
||||
var bottArr = ['0.9rem', '0.9rem', '0.9rem', '0.9rem', '2.0rem', '3.1rem', '3.1rem', '3.1rem', '4.3rem', '5.6rem', '5.6rem', '5.6rem', '6.7rem', '7.8rem', '9.1rem', '9.1rem', '9.1rem', '7.8rem', '7.8rem', '7.8rem', '9.1rem', '9.1rem', '9.1rem', '7.8rem', '6.7rem', '6.7rem', '5.6rem', '4.3rem', '4.3rem', '3.1rem', '2.0rem', '2.0rem', '2.0rem', '2.0rem'];
|
||||
var curDate; //當天日期;
|
||||
var rankType = 1; //排行榜類型(1=送禮日榜,2=送禮總榜,3=收禮日榜,4=收禮總榜);
|
||||
var data = null;//默認日榜;
|
||||
var isEndTime = null;//判斷是否活動結束;
|
||||
var roomUid = null;//房間uid;
|
||||
var type = 'a';//a:送禮b:收禮;
|
||||
var type2 = 'a';//a:日榜b:總榜;
|
||||
var page = 1;//頁碼
|
||||
var drawPageSizeLack = true;//記錄滑動鎖
|
||||
var poolType = null;//寶箱等級
|
||||
var mapPos = null;//當前格子下標
|
||||
var drawLock = true;//抽獎的鎖
|
||||
var candyNum = 0;//糖果卷
|
||||
// 初始化函數
|
||||
$(function () {
|
||||
getInfoFromClient()
|
||||
setTimeout(function () {
|
||||
// 頁面全屏
|
||||
if (browser.app) {
|
||||
if (browser.android) {
|
||||
window.androidJsObj.initShowNav(false)
|
||||
} else {
|
||||
window.webkit.messageHandlers.initShowNav.postMessage(0)
|
||||
}
|
||||
};
|
||||
// 頂部返回事件
|
||||
$('.back').click(() => {
|
||||
if (browser.android) {
|
||||
window.androidJsObj.closeWebView()
|
||||
} else {
|
||||
window.webkit.messageHandlers.closeWebView.postMessage(null)
|
||||
}
|
||||
})
|
||||
// 禮物輪播
|
||||
var mySwiper = new Swiper('.swiper', {
|
||||
// direction: "vertical",
|
||||
loop: true,
|
||||
autoplay: {
|
||||
delay: 3500,//
|
||||
disableOnInteraction: false
|
||||
}
|
||||
})
|
||||
getTaskConfig();
|
||||
getRecommendRoom();
|
||||
getConfig();
|
||||
}, 100)
|
||||
})
|
||||
// 獲取房間Uid接口
|
||||
function getRecommendRoom () {
|
||||
showLoading()
|
||||
networkRequest({
|
||||
type: 'GEt',
|
||||
url: urlPrefix + '/home/tab/home/one',
|
||||
success (res) {
|
||||
if (res.code === 200) {
|
||||
roomUid = res.data;
|
||||
} else {
|
||||
toastMsg(res.message)
|
||||
}
|
||||
hideLoading(layerIndex)
|
||||
},
|
||||
error (err) {
|
||||
hideLoading(layerIndex)
|
||||
toastMsg('網絡錯誤,請退出重進')
|
||||
}
|
||||
})
|
||||
}
|
||||
// 抽獎配置接口
|
||||
function getConfig () {
|
||||
// showLoading()
|
||||
networkRequest({
|
||||
type: 'GEt',
|
||||
url: urlPrefix + '/act/2023Halloween/draw/getConfig',
|
||||
success (res) {
|
||||
if (res.code === 200) {
|
||||
// 處理糖果數量
|
||||
$('.myCandy').text('我的糖果券:' + res.data.candyNum);
|
||||
candyNum = res.data.candyNum;
|
||||
// 當前格子下標
|
||||
mapPos = res.data.mapPos;
|
||||
$('.page1 .road .gui').css({
|
||||
left: leftArr[res.data.mapPos],
|
||||
bottom: bottArr[res.data.mapPos],
|
||||
})
|
||||
// 判斷活動結束時間
|
||||
if (res.timestamp > res.data.endTime) {
|
||||
isEndTime = true;
|
||||
$('.endActivity').show();
|
||||
}
|
||||
// 判斷等級處理
|
||||
poolType = res.data.boxLevel;
|
||||
if (res.data.boxLevel == 0) {
|
||||
$('.page1 .mc').show();
|
||||
} else if (res.data.boxLevel == 1) {
|
||||
$('.page1 .boxs1').addClass('boxOpen1');
|
||||
$('.page1 .road .boxImg').attr('src', './images/box1.png');
|
||||
} else if (res.data.boxLevel == 2) {
|
||||
$('.page1 .boxs1').addClass('boxOpen1');
|
||||
$('.page1 .boxs2').addClass('boxOpen2');
|
||||
$('.page1 .road .boxImg').attr('src', './images/box2.png');
|
||||
} else if (res.data.boxLevel == 3) {
|
||||
$('.page1 .boxs1').addClass('boxOpen1');
|
||||
$('.page1 .boxs2').addClass('boxOpen2');
|
||||
$('.page1 .boxs3').addClass('boxOpen3');
|
||||
$('.page1 .road .boxImg').attr('src', './images/box3.png');
|
||||
}
|
||||
// 特效移動
|
||||
$('.page1 .road .gui').css({
|
||||
left: leftArr[mapPos],
|
||||
bottom: bottArr[mapPos],
|
||||
})
|
||||
// 判斷當前位置是否處於寶箱點位
|
||||
if (mapPos == 4 || mapPos == 8 || mapPos == 13 || mapPos == 18 || mapPos == 22 || mapPos == 26 || mapPos == 30) {
|
||||
$(`.page1 .road .boxImgs${mapPos}`).attr('src', `./images/boxOpen${poolType}.png`)
|
||||
} else {
|
||||
$(`.page1 .road .boxImg`).attr('src', `./images/box${poolType}.png`);
|
||||
}
|
||||
} else {
|
||||
toastMsg(res.message)
|
||||
}
|
||||
hideLoading(layerIndex)
|
||||
},
|
||||
error (err) {
|
||||
hideLoading(layerIndex)
|
||||
toastMsg('網絡錯誤,請退出重進')
|
||||
}
|
||||
})
|
||||
}
|
||||
// 任務配置接口
|
||||
function getTaskConfig () {
|
||||
showLoading()
|
||||
networkRequest({
|
||||
type: 'GEt',
|
||||
url: urlPrefix + '/act/2023Halloween/task/getConfig',
|
||||
success (res) {
|
||||
if (res.code === 200) {
|
||||
// 處理每日任務
|
||||
res.data.dailyTaskList.forEach((res, i) => {
|
||||
$(`.page2 .task${i + 1} .but`).attr('click', res.status);
|
||||
$(`.page2 .task${i + 1} .but`).text(res.status == 0 ? '去完成' : '已完成');
|
||||
res.status == 1 ? $(`.page2 .task${i + 1} .but`).addClass('butActive') : $(`.page2 .task${i + 1} .but`).removeClass('butActive');
|
||||
if (i == 0) {
|
||||
$('.page2 .task1 p').text(`登錄活動頁(${res.cur}/${res.need})`);
|
||||
}
|
||||
if (i == 1) {
|
||||
$('.page2 .task2 .line').css('width', `${(res.cur / res.need * 100) >= 100 ? 100 : (res.cur / res.need * 100)}%`);
|
||||
$('.page2 .task2 .line').text(`${res.cur}/${res.need}`);
|
||||
}
|
||||
});
|
||||
// 處理循環任務
|
||||
res.data.loopTaskList.forEach((res, i) => {
|
||||
$(`.page2 .task${i + 3} b i`).text(`${res.loop}張`);
|
||||
$(`.page2 .task${i + 3} .but`).attr('click', res.status);
|
||||
$(`.page2 .task${i + 3} .but`).text(res.status == 0 ? '去完成' : '已完成');
|
||||
res.status == 1 ? $(`.page2 .task${i + 3} .but`).addClass(`butActive`) : $(`.page2 .task${i + 3} .but`).removeClass(`butActive`);
|
||||
})
|
||||
} else {
|
||||
toastMsg(res.message)
|
||||
}
|
||||
hideLoading(layerIndex)
|
||||
},
|
||||
error (err) {
|
||||
hideLoading(layerIndex)
|
||||
toastMsg('網絡錯誤,請退出重進')
|
||||
}
|
||||
})
|
||||
}
|
||||
// 任務按鈕2
|
||||
$('.page2 .task2 .but').click(function () {
|
||||
var bool = $(this).attr('click') == 0 ? false : true;
|
||||
console.log(bool);
|
||||
if (bool) {
|
||||
return
|
||||
}
|
||||
if (browser.ios) {
|
||||
window.webkit.messageHandlers.openRoom.postMessage(roomUid);
|
||||
} else if (browser.android) {
|
||||
if (androidJsObj && typeof androidJsObj === 'object') {
|
||||
window.androidJsObj.openRoom(roomUid);
|
||||
}
|
||||
}
|
||||
})
|
||||
// 任務按鈕3
|
||||
$('.page2 .task3 .but').click(function () {
|
||||
var bool = $(this).attr('click') == 0 ? false : true;
|
||||
console.log(bool);
|
||||
if (bool) {
|
||||
return
|
||||
}
|
||||
// if (browser.ios) {
|
||||
// window.webkit.messageHandlers.openRoomForGiftId.postMessage(JSON.stringify({ uid: roomUid, giftId: 0 }))
|
||||
// } else if (browser.android) {
|
||||
// if (androidJsObj && typeof androidJsObj === 'object') {
|
||||
// window.androidJsObj.openRoomForGiftId(roomUid, 0);
|
||||
// }
|
||||
// }
|
||||
if (env == 'test') {
|
||||
window.location.href = `${testUrls}/peko/activity/act-ocean/index.html`
|
||||
} else {
|
||||
window.location.href = `${formalUrl}/peko/activity/act-ocean/index.html`
|
||||
}
|
||||
|
||||
})
|
||||
// 任務按鈕4
|
||||
$('.page2 .task4 .but').click(function () {
|
||||
var bool = $(this).attr('click') == 0 ? false : true;
|
||||
console.log(bool);
|
||||
if (bool) {
|
||||
return
|
||||
}
|
||||
if (browser.ios) {
|
||||
window.webkit.messageHandlers.openRoomForGiftId.postMessage(JSON.stringify({ uid: roomUid, giftId: 0 }))
|
||||
} else if (browser.android) {
|
||||
if (androidJsObj && typeof androidJsObj === 'object') {
|
||||
window.androidJsObj.openRoomForGiftId(roomUid, 0);
|
||||
}
|
||||
}
|
||||
})
|
||||
// 點擊寶箱按鈕
|
||||
$('.page1 .boxs').click(function () {
|
||||
var i = $(this).index() - 6;
|
||||
if (i == 1) {
|
||||
$('.box_pub .box_pub_in .p1').text('活動期間送出萬聖福袋*1');
|
||||
$('.box_pub .box_pub_in .p3').text('活動期間收到萬聖福袋*5');
|
||||
} else if (i == 2) {
|
||||
$('.box_pub .box_pub_in .p1').text('活動期間送出萬聖福袋*10');
|
||||
$('.box_pub .box_pub_in .p3').text('活動期間收到萬聖福袋*20');
|
||||
} else {
|
||||
$('.box_pub .box_pub_in .p1').text('活動期間送出萬聖福袋*20');
|
||||
$('.box_pub .box_pub_in .p3').text('活動期間收到萬聖福袋*30');
|
||||
}
|
||||
$('.box_pub .box_pub_in .box_pub_ul li').removeClass('li1').removeClass('li2').removeClass('li3');
|
||||
$('.box_pub .box_pub_in .box_pub_ul li').addClass(`li${i}`);
|
||||
$('.box_pub .box_pub_in .box_pub_Title').attr('src', `./images/box_pub_Title${i}.png`)
|
||||
$('.box_pub').show();
|
||||
bodyScroolFun(true);
|
||||
})
|
||||
// 去完成寶箱解鎖任務按鈕
|
||||
$('.page1 .mc .mc_in .but').click(function () {
|
||||
if (browser.ios) {
|
||||
window.webkit.messageHandlers.openRoomForGiftId.postMessage(JSON.stringify({ uid: roomUid, giftId: 0 }))
|
||||
} else if (browser.android) {
|
||||
if (androidJsObj && typeof androidJsObj === 'object') {
|
||||
window.androidJsObj.openRoomForGiftId(roomUid, 0);
|
||||
}
|
||||
}
|
||||
})
|
||||
// tab切換
|
||||
$('.tab div').click(function () {
|
||||
var i = $(this).index() + 1;
|
||||
$('.page1,.page2,.page3').hide();
|
||||
if (i == 1) {
|
||||
$('.page1').show();
|
||||
getConfig();
|
||||
} else {
|
||||
getRank(rankType, data);
|
||||
$('.page3').show();
|
||||
}
|
||||
})
|
||||
// 地圖任務tab切換
|
||||
$('.switch div').click(function () {
|
||||
var i = $(this).index() + 1;
|
||||
$('.page1,.page2,.page3').hide();
|
||||
if (i == 1) {
|
||||
$('.page1').show();
|
||||
getConfig();
|
||||
} else {
|
||||
$('.page2').show();
|
||||
getConfig();
|
||||
getTaskConfig();
|
||||
}
|
||||
})
|
||||
// 尖叫驚喜榜單切換
|
||||
$('.page3 .listTab div').click(function () {
|
||||
var i = $(this).index() + 1;
|
||||
$('.page3 .listTitle').attr('src', `./images/listTitle${i}.png`);
|
||||
$('.listRule .listRule_in .listRuletitle').attr('src', `./images/listRuletitle${i}.png`);
|
||||
$('.listRule .listRule_in .box img').attr('src', `./images/listRuleText${i}.png`);
|
||||
$(this).addClass('active').siblings().removeClass('active');
|
||||
if (i == 1) {
|
||||
type = 'a';
|
||||
rankType = type2 == "a" ? 1 : 2;
|
||||
} else {
|
||||
type = 'b';
|
||||
rankType = type2 == "a" ? 3 : 4;
|
||||
}
|
||||
getRank(rankType, data);
|
||||
})
|
||||
// 日榜總榜切換
|
||||
$('.page3 .dayTab div').click(function () {
|
||||
var i = $(this).index() + 1;
|
||||
$(this).addClass('active').siblings().removeClass('active');
|
||||
if (i == 1) {
|
||||
type2 = 'a';
|
||||
rankType = type == "a" ? 1 : 3;
|
||||
$('.page3 .time').show();
|
||||
} else {
|
||||
type2 = 'b';
|
||||
rankType = type == "a" ? 2 : 4;
|
||||
$('.page3 .time').hide();
|
||||
}
|
||||
getRank(rankType, data);
|
||||
})
|
||||
// 日榜切換日期
|
||||
$('.page3 .time div').click(function () {
|
||||
var datas = $(this).attr('data');
|
||||
$(this).addClass('active').siblings().removeClass('active');
|
||||
rankType = type == "a" ? 1 : 3;//排行榜類型(1=甜蜜日榜,2=甜蜜總榜,3=愛意日榜,4=愛意總榜)
|
||||
data = datas;
|
||||
getRank(rankType, data);
|
||||
})
|
||||
// 榜單接口
|
||||
function getRank (rankType, date) {//排行榜類型rankType(1=送禮日榜,2=送禮總榜,3=收禮日榜,4=收禮總榜)
|
||||
$('.page3 .lists li').remove();
|
||||
showLoading()
|
||||
networkRequest({
|
||||
type: 'GEt',
|
||||
url: urlPrefix + '/act/2023Halloween/rank/getRank',
|
||||
data: { rankType, date },
|
||||
success (res) {
|
||||
if (res.code === 200) {
|
||||
// 設置當天日期
|
||||
curDate = res.data.curDate;
|
||||
// 處理日期
|
||||
if (res.data.dateList) {
|
||||
res.data.dateList.forEach((res, i) => {
|
||||
$('.page3 .time div').eq(i).text(`${res[5]}${res[6]}.${res[8]}${res[9]}`);
|
||||
$('.page3 .time div').eq(i).attr('data', res);
|
||||
if (res == curDate && date == null) {
|
||||
$('.page3 .time div').removeClass('active')
|
||||
$('.page3 .time div').eq(i).addClass('active');
|
||||
}
|
||||
})
|
||||
}
|
||||
// 處理自己榜單
|
||||
$('.page3 .my .li .tx').attr('src', res.data.meRank.avatar);
|
||||
$('.page3 .my .li .num').text(res.data.meRank.ranking == 0 ? '未上榜' : res.data.meRank.ranking);
|
||||
$('.page3 .my .li .nick').text(res.data.meRank.nick);
|
||||
$('.page3 .my .li .score').text(`${rankType == 1 || rankType == 2 ? "尖叫值:" : "驚喜值:"}${unitProcessing(res.data.meRank.score, 10000, 1, 'w')}`);
|
||||
// 處理前三
|
||||
var top3 = res.data.rankList.slice(0, 3);
|
||||
var notTop3 = res.data.rankList.slice(3);
|
||||
if (top3.length < 3) {
|
||||
let arr = new Array(3 - top3.length).fill({
|
||||
avatar: './images/logo.png',
|
||||
nick: '虛位以待',
|
||||
score: "0"
|
||||
})
|
||||
top3.push(...arr)
|
||||
}
|
||||
top3.forEach((res, index) => {
|
||||
$(`.page3 .topBox .no${index + 1} .tx`).attr('src', res.avatar);
|
||||
$(`.page3 .topBox .no${index + 1} p`).text(res.nick);
|
||||
$(`.page3 .topBox .no${index + 1} b`).text(`${rankType == 1 || rankType == 2 ? "尖叫值:" : "驚喜值:"}${unitProcessing(res.score, 10000, 1, 'w')}`);
|
||||
})
|
||||
// 非前三
|
||||
var str = '';
|
||||
notTop3.forEach((res, i) => {
|
||||
str += `
|
||||
<li>
|
||||
<div class="num">${res.ranking}</div>
|
||||
<img src="${res.avatar}" alt="" class="tx">
|
||||
<div class="nick">${res.nick}</div>
|
||||
<div class="score">${rankType == 1 || rankType == 2 ? "尖叫值:" : "驚喜值:"}${unitProcessing(res.score, 10000, 1, 'w')}</div>
|
||||
</li>
|
||||
`
|
||||
})
|
||||
$('.page3 .lists').append(str);
|
||||
} else {
|
||||
toastMsg(res.message)
|
||||
}
|
||||
hideLoading(layerIndex)
|
||||
},
|
||||
error (err) {
|
||||
hideLoading(layerIndex)
|
||||
toastMsg('網絡錯誤,請退出重進')
|
||||
}
|
||||
})
|
||||
}
|
||||
// 打開活動規則
|
||||
$('.header .rule_icon').click(function () {
|
||||
$('.rule').show();
|
||||
bodyScroolFun(true);
|
||||
})
|
||||
// 關閉活動規則
|
||||
$('.rule').click(function () {
|
||||
$('.rule').hide();
|
||||
bodyScroolFun(false);
|
||||
})
|
||||
// 打開榜單規則
|
||||
$('.page3 .rule_icon').click(function () {
|
||||
$('.listRule').show();
|
||||
bodyScroolFun(true);
|
||||
})
|
||||
// 關閉榜單規則
|
||||
$('.listRule').click(function () {
|
||||
$('.listRule').hide();
|
||||
bodyScroolFun(false);
|
||||
})
|
||||
// 關閉初中高寶箱彈窗
|
||||
$('.box_pub').click(function () {
|
||||
$('.box_pub').hide();
|
||||
bodyScroolFun(false);
|
||||
})
|
||||
// 關閉恭喜獲得彈窗
|
||||
$('.gx .gx_in .but').click(function () {
|
||||
drawLock = true;
|
||||
$('.gx').hide();
|
||||
bodyScroolFun(false);
|
||||
})
|
||||
// 關閉糟糕彈窗
|
||||
$('.zg').click(function () {
|
||||
drawLock = true;
|
||||
$('.zg').hide();
|
||||
bodyScroolFun(false);
|
||||
})
|
||||
// 關閉寶箱記錄彈窗
|
||||
$('.record_box').click(function () {
|
||||
$('.record_box').hide();
|
||||
bodyScroolFun(false);
|
||||
})
|
||||
// 打開寶箱記錄
|
||||
$('.page1 .diceBox .diceLeftBut').click(function () {
|
||||
page = 1;
|
||||
$('.record_box .record_box_in ul li').remove();
|
||||
pageRecord(page);
|
||||
})
|
||||
// 獲取房間Uid接口
|
||||
function pageRecord (page) {
|
||||
showLoading()
|
||||
networkRequest({
|
||||
type: 'GEt',
|
||||
url: urlPrefix + '/act/2023Halloween/draw/pageRecord',
|
||||
data: { page, size: 20 },
|
||||
success (res) {
|
||||
if (res.code === 200) {
|
||||
if (res.data.length == 0) {
|
||||
drawPageSizeLack = false;
|
||||
hideLoading(layerIndex)
|
||||
$('.record_box').show();
|
||||
return;
|
||||
}
|
||||
var str = '';
|
||||
res.data.forEach((res, i) => {
|
||||
str += `
|
||||
<li>
|
||||
<div class="left">
|
||||
<p>${dateFormat(res.createTime, 'yyyy/MM/dd')}</p>
|
||||
<b>${dateFormat(res.createTime, 'hh:mm:ss')}</b>
|
||||
</div>
|
||||
<div class="right">${res.rewardDesc}</div>
|
||||
</li>
|
||||
`
|
||||
})
|
||||
$('.record_box .record_box_in ul ').append(str);
|
||||
drawPageSizeLack = true;
|
||||
$('.record_box').show();
|
||||
bodyScroolFun(true);
|
||||
} else {
|
||||
drawPageSizeLack = true;
|
||||
toastMsg(res.message)
|
||||
}
|
||||
hideLoading(layerIndex)
|
||||
},
|
||||
error (err) {
|
||||
drawPageSizeLack = true;
|
||||
hideLoading(layerIndex)
|
||||
toastMsg('網絡錯誤,請退出重進')
|
||||
}
|
||||
})
|
||||
}
|
||||
//檢測抽獎記錄是否到達底部
|
||||
$(".record_box .record_box_in ul").scroll(function () {
|
||||
var divHeight = $(this).height();
|
||||
var nScrollHeight = $(this)[0].scrollHeight;
|
||||
var nScrollTop = $(this)[0].scrollTop;
|
||||
if (nScrollTop + divHeight + 50 >= nScrollHeight) {
|
||||
console.log("到達底部了");
|
||||
if (drawPageSizeLack) {
|
||||
drawPageSizeLack = false;
|
||||
page++;
|
||||
pageRecord(page);
|
||||
}
|
||||
}
|
||||
});
|
||||
// 骰子動畫定義
|
||||
let player = new SVGA.Player('.diceSvga');
|
||||
let parser = new SVGA.Parser('.diceSvga');
|
||||
parser.load(`./images/sz.svga`, function (videoItem) {
|
||||
player.loops = 1;
|
||||
player.clearsAfterStop = false;
|
||||
player.setVideoItem(videoItem);
|
||||
player.startAnimation();
|
||||
player.setContentMode('AspectFill');
|
||||
})
|
||||
// 骰子動畫函數
|
||||
function diceSvga () {
|
||||
$('.page1 .diceBox .diceSvga').show();
|
||||
$('.page1 .diceBox .dice').hide();
|
||||
parser.load(`./images/sz.svga`, function (videoItem) {
|
||||
player.loops = 1;
|
||||
player.clearsAfterStop = false;
|
||||
player.setVideoItem(videoItem);
|
||||
player.startAnimation();
|
||||
player.setContentMode('AspectFill');
|
||||
player.onFinished(() => {
|
||||
$('.page1 .diceBox .dice').show();
|
||||
$('.page1 .diceBox .diceSvga').hide();
|
||||
})
|
||||
})
|
||||
}
|
||||
// 搖骰子按鈕
|
||||
$('.page1 .diceBox .dice').click(function () {
|
||||
if (drawLock) {
|
||||
if (candyNum < 1) {
|
||||
toastMsg('糖果券不足')
|
||||
return
|
||||
}
|
||||
draw(poolType, 1);
|
||||
}
|
||||
})
|
||||
// 全部投入
|
||||
$('.page1 .diceBox .diceRightBut').click(function () {
|
||||
if (drawLock) {
|
||||
if (candyNum < 1) {
|
||||
toastMsg('糖果券不足')
|
||||
return
|
||||
}
|
||||
draw(poolType, null);
|
||||
}
|
||||
})
|
||||
// 活動結束按鈕
|
||||
$('.endActivity .endActivity_in .but').click(function () {
|
||||
$('.endActivity').hide();
|
||||
bodyScroolFun(false);
|
||||
$('.page1,.page2,.page3').hide();
|
||||
getRank(rankType, data);
|
||||
$('.page3').show();
|
||||
})
|
||||
// 寶箱開獎動畫定義
|
||||
let boxBig1 = new SVGA.Player('.boxImgSvga_in1');
|
||||
let boxBigParser1 = new SVGA.Parser('.boxImgSvga_in1');
|
||||
boxBigParser1.load(`./images/boxBig1.svga`, function (videoItem) {
|
||||
boxBig1.loops = 1;
|
||||
boxBig1.clearsAfterStop = false;
|
||||
boxBig1.setVideoItem(videoItem);
|
||||
boxBig1.startAnimation();
|
||||
boxBig1.setContentMode('AspectFill');
|
||||
})
|
||||
// 寶箱開獎動畫函數
|
||||
function boxBigSvga1 () {
|
||||
$('.boxImgSvgaA').show();
|
||||
boxBigParser1.load(`./images/boxBig1.svga`, function (videoItem) {
|
||||
boxBig1.loops = 1;
|
||||
boxBig1.clearsAfterStop = false;
|
||||
boxBig1.setVideoItem(videoItem);
|
||||
boxBig1.startAnimation();
|
||||
boxBig1.setContentMode('AspectFill');
|
||||
boxBig1.onFinished(() => {
|
||||
$('.boxImgSvgaA').hide();
|
||||
$('.gx').show();
|
||||
})
|
||||
})
|
||||
}
|
||||
// 寶箱開獎動畫定義
|
||||
let boxBig2 = new SVGA.Player('.boxImgSvga_in2');
|
||||
let boxBigParser2 = new SVGA.Parser('.boxImgSvga_in2');
|
||||
boxBigParser2.load(`./images/boxBig2.svga`, function (videoItem) {
|
||||
boxBig2.loops = 1;
|
||||
boxBig2.clearsAfterStop = false;
|
||||
boxBig2.setVideoItem(videoItem);
|
||||
boxBig2.startAnimation();
|
||||
boxBig2.setContentMode('AspectFill');
|
||||
})
|
||||
// 寶箱開獎動畫函數
|
||||
function boxBigSvga2 () {
|
||||
$('.boxImgSvgaB').show();
|
||||
boxBigParser2.load(`./images/boxBig2.svga`, function (videoItem) {
|
||||
boxBig2.loops = 1;
|
||||
boxBig2.clearsAfterStop = false;
|
||||
boxBig2.setVideoItem(videoItem);
|
||||
boxBig2.startAnimation();
|
||||
boxBig2.setContentMode('AspectFill');
|
||||
boxBig2.onFinished(() => {
|
||||
$('.boxImgSvgaB').hide();
|
||||
$('.gx').show();
|
||||
})
|
||||
})
|
||||
}
|
||||
// 寶箱開獎動畫定義
|
||||
let boxBig3 = new SVGA.Player('.boxImgSvga_in3');
|
||||
let boxBigParser3 = new SVGA.Parser('.boxImgSvga_in3');
|
||||
boxBigParser2.load(`./images/boxBig3.svga`, function (videoItem) {
|
||||
boxBig3.loops = 1;
|
||||
boxBig3.clearsAfterStop = false;
|
||||
boxBig3.setVideoItem(videoItem);
|
||||
boxBig3.startAnimation();
|
||||
boxBig3.setContentMode('AspectFill');
|
||||
})
|
||||
// 寶箱開獎動畫函數
|
||||
function boxBigSvga3 () {
|
||||
$('.boxImgSvgaC').show();
|
||||
boxBigParser2.load(`./images/boxBig3.svga`, function (videoItem) {
|
||||
boxBig3.loops = 1;
|
||||
boxBig3.clearsAfterStop = false;
|
||||
boxBig3.setVideoItem(videoItem);
|
||||
boxBig3.startAnimation();
|
||||
boxBig3.setContentMode('AspectFill');
|
||||
boxBig3.onFinished(() => {
|
||||
$('.boxImgSvgaC').hide();
|
||||
$('.gx').show();
|
||||
})
|
||||
})
|
||||
}
|
||||
// 抽獎接口
|
||||
function draw (poolType, num) {
|
||||
drawLock = false;
|
||||
showLoading()
|
||||
networkRequest({
|
||||
type: 'GEt',
|
||||
url: urlPrefix + '/act/2023Halloween/draw/draw',
|
||||
data: { poolType, num },
|
||||
success (res) {
|
||||
if (res.code === 200) {
|
||||
// 判斷是否全部投入或單次投入
|
||||
if (num != null) {
|
||||
diceSvga();
|
||||
setTimeout(function () {
|
||||
res.data.step.forEach((res, index) => {
|
||||
console.log(res);
|
||||
setTimeout(function () {
|
||||
$('.page1 .road .gui').css({
|
||||
left: leftArr[res],
|
||||
bottom: bottArr[res],
|
||||
})
|
||||
}, (index + 1) * 300)
|
||||
});
|
||||
drawOut(res, res.data.step.length + 1, poolType);
|
||||
}, 1600);
|
||||
} else {
|
||||
drawOut(res, 0, poolType);
|
||||
}
|
||||
// 設置步數
|
||||
$('.page1 .diceBox .dice').attr('src', `./images/dice${res.data.step.length}.png`);
|
||||
} else if (res.code == 4000) {
|
||||
toastMsg(res.message);
|
||||
getConfig();
|
||||
drawLock = true;
|
||||
} else {
|
||||
drawLock = true;
|
||||
toastMsg(res.message)
|
||||
}
|
||||
hideLoading(layerIndex)
|
||||
},
|
||||
error (err) {
|
||||
drawLock = true;
|
||||
hideLoading(layerIndex)
|
||||
toastMsg('網絡錯誤,請退出重進')
|
||||
}
|
||||
})
|
||||
}
|
||||
// 中獎或未中獎渲染
|
||||
function drawOut (res, time, poolType) {
|
||||
//判斷是否中獎
|
||||
if (res.data.hasReward) {
|
||||
// 渲染中獎列錶<p>xxx頭飾*1天</p>
|
||||
var str = '';
|
||||
$('.gx .gx_in .gxBox li').remove();
|
||||
res.data.rewardList.forEach((res, i) => {
|
||||
// 1頭飾;2銘牌;3氣泡;4座駕;5禮物;
|
||||
str += `
|
||||
<li>
|
||||
<img src="${res.pic}" alt="" class="gift ${res.type == 1 ? 'ts' : res.type == 2 ? 'mp' : res.type == 3 ? 'qp' : res.type == 4 ? 'zj' : 'lw'}">
|
||||
<p>${res.desc}</p>
|
||||
</li>
|
||||
`
|
||||
})
|
||||
$('.gx .gx_in .gxBox').append(str);
|
||||
setTimeout(function () {
|
||||
poolType == 1 ? boxBigSvga1() : poolType == 2 ? boxBigSvga2() : boxBigSvga3();
|
||||
$(`.page1 .road .boxImgs${res.data.step[res.data.step.length - 1]}`).attr('src', `./images/boxOpen${poolType}.png`);
|
||||
getConfig();
|
||||
// drawLock = true;
|
||||
}, time * 300)
|
||||
} else {
|
||||
setTimeout(function () {
|
||||
$('.zg').show();
|
||||
// drawLock = true;
|
||||
getConfig();
|
||||
}, time * 300)
|
||||
}
|
||||
bodyScroolFun(true);
|
||||
}
|
||||
//返回頁面 重新請求接口
|
||||
var hiddenProperty = 'hidden' in document ? 'hidden' :
|
||||
'webkitHidden' in document ? 'webkitHidden' :
|
||||
'mozHidden' in document ? 'mozHidden' : null;
|
||||
|
||||
var visibilityChangeEvent = hiddenProperty.replace(/hidden/i, 'visibilitychange');
|
||||
var onVisibilityChange = function () {
|
||||
if (!document[hiddenProperty]) {
|
||||
getConfig();
|
||||
getTaskConfig();
|
||||
}
|
||||
}
|
||||
document.addEventListener(visibilityChangeEvent, onVisibilityChange);
|
14
view/peko/activity/2023-halloween/js/swiper-bundle.min.js
vendored
Normal file
46
view/peko/activity/2023-halloween/js/wow.js
Normal file
@@ -0,0 +1,46 @@
|
||||
var baba = document.querySelector('body');
|
||||
baba.addEventListener('click', function (e) {
|
||||
// $('body,html').css({ "width": "100%", "position": "relative", "overflow": "hidden" });
|
||||
tianJia(e);
|
||||
})
|
||||
|
||||
var erZi = [];
|
||||
function tianJia (e) {
|
||||
var sunZi = document.createElement('div');
|
||||
sunZi.className = 'rabbit';
|
||||
// sunZi.innerHTML = '<i class="iconfont icon-tuzi"></i>';
|
||||
sunZi.innerHTML = '<img src="./images/xx.png" alt="">';
|
||||
baba.appendChild(sunZi);
|
||||
erZi.push({
|
||||
el: sunZi,
|
||||
top: e.pageY - 30,
|
||||
left: e.pageX - 20,
|
||||
opacity: 1,
|
||||
scale: 1,
|
||||
color: `rgb(${255 * Math.random()},${255 * Math.random()},${255 * Math.random()})`
|
||||
});
|
||||
move();
|
||||
};
|
||||
function move () {
|
||||
for (var i = 0; i < erZi.length; i++) {
|
||||
if (erZi[i].opacity <= 0) {
|
||||
baba.removeChild(erZi[i].el);
|
||||
erZi.splice(i, 1);
|
||||
return;
|
||||
}
|
||||
erZi[i].top--;
|
||||
erZi[i].opacity = erZi[i].opacity - 0.04;
|
||||
// erZi[i].scale = erZi[i].scale + 0.0001;
|
||||
erZi[i].el.style.cssText = `
|
||||
top: ${erZi[i].top}px;
|
||||
left: ${erZi[i].left}px;
|
||||
color: ${erZi[i].color};
|
||||
opacity: ${erZi[i].opacity};
|
||||
transform: scale(${erZi[i].scale});
|
||||
position: absolute;
|
||||
`
|
||||
|
||||
}
|
||||
window.requestAnimationFrame(move);
|
||||
// $('body,html').css({ "width": "100%", "position": "relative", "overflow": "auto" });
|
||||
}
|
1910
view/peko/activity/act-2023-qx/css/index.css
Normal file
2140
view/peko/activity/act-2023-qx/css/index.scss
Normal file
13
view/peko/activity/act-2023-qx/css/swiper-bundle.min.css
vendored
Normal file
BIN
view/peko/activity/act-2023-qx/images/1.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
view/peko/activity/act-2023-qx/images/10.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
view/peko/activity/act-2023-qx/images/11.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
view/peko/activity/act-2023-qx/images/2.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
view/peko/activity/act-2023-qx/images/3.png
Normal file
After Width: | Height: | Size: 22 KiB |