初始化端午项目

This commit is contained in:
梁泽军
2025-05-20 18:28:02 +08:00
parent d239b3f8fb
commit 749a61f00b
95 changed files with 1399 additions and 1387 deletions

View File

@@ -3,8 +3,6 @@ import { Toast } from "vant";
import { debounceTap } from "@/plugins";
import gsap from "gsap";
import { useMainStore } from "@/store";
import Preloader from "@/plugins/Preloader";
import { pageQAImg } from "@/data/imgList";
const emit = defineEmits(["IndexPage"]);
const userStore = useMainStore();
@@ -35,25 +33,25 @@ const showRule = (event) => {
});
};
onMounted(() => {
gsap.from(
".index-bg,.index-island,.index-cloud-1,.index-cloud-2,.index-tree-1",
{ duration: 1, scale: 1.2, autoAlpha: 0 }
);
gsap.from(".index-title", { duration: 1, y: 20, autoAlpha: 0 });
gsap.from(".index-sub-title", { duration: 1, x: 20, autoAlpha: 0 });
gsap.from(".index-rule-btn", { duration: 1, x: -100, autoAlpha: 0 });
gsap.from(".index-bg", { duration: 1, scale: 1.2, autoAlpha: 0 });
gsap.from(".index-title", { duration: 1, y: 20, autoAlpha: 0, delay: 1 });
gsap.from(".index-time", { duration: 1, x: 40, autoAlpha: 0, delay: 1 });
gsap.from(".index-text", { duration: 1, scale: 2, autoAlpha: 0, delay: 1 });
gsap.from(".index-logo", { duration: 1, y: 20, autoAlpha: 0, delay: 0.75 });
gsap.from(".index-rule-btn", { duration: 1, x: -100, autoAlpha: 0, delay: 1.3 });
gsap.from(".index-prize-btn", {
duration: 1,
x: -100,
autoAlpha: 0,
delay: 0.3,
delay: 1.5,
});
gsap.from(".index-start-btn", {
duration: 1,
y: 30,
autoAlpha: 0,
delay: 0.5,
delay: 1.5,
});
gsap.from(".index-agreement", {
duration: 1,
@@ -61,61 +59,11 @@ onMounted(() => {
autoAlpha: 0,
delay: 0.5,
onComplete: () => {
gsap.to(".index-start-btn", {
duration: 1,
scale: "0.9",
repeat: -1,
yoyo: true,
ease: "bounce.in",
});
gsap.to(".index-cloud-1", {
duration: 2,
x: -30,
repeat: -1,
yoyo: true,
ease: "none",
});
gsap.to(".index-cloud-2", {
duration: 2,
x: 30,
repeat: -1,
yoyo: true,
ease: "none",
});
gsap.to(".index-tree-1", {
duration: 2,
y: 10,
repeat: -1,
yoyo: true,
ease: "none",
});
gsap.to(".index-title", {
duration: 2.5,
y: -20,
repeat: -1,
yoyo: true,
ease: "none",
});
gsap.to(".index-sub-title", {
duration: 3,
x: 10,
repeat: -1,
yoyo: true,
ease: "none",
});
// 开始加载答题页面资源
Preloader({
name: "加载答题页资源",
imgs: pageQAImg,
callback: (progress) => {
// console.log("进度:", progress);
},
}).then((res) => {
console.log("done!");
});
},
gsap.to('.index-start-btn', { duration: 1, scale: '0.95', repeat: -1, yoyo: true, ease: 'bounce.out' })
}
});
});
const vcNum = ref(false);
@@ -131,29 +79,21 @@ const showVC = () => {
<div class="IndexPage" @touchmove.prevent>
<div class="index-bg"></div>
<div class="index-container">
<div class="index-cloud-1"></div>
<div class="index-cloud-2"></div>
<div class="index-tree-1"></div>
<div class="index-island"></div>
<div class="index-logo"></div>
<div class="index-title" @click="showVC"></div>
<div class="index-sub-title"></div>
<div class="index-rule-btn" @click="showRule($event)"></div>
<!-- v-if="userStore.hasPrize" -->
<div class="index-prize-btn" @click="showMyPrize($event)"></div>
<div class="index-time"></div>
<div class="index-rule-btn index-left-btn" @click="showRule($event)">活动规则</div>
<div class="index-prize-btn index-left-btn" v-if="userStore.hasPrize" @click="showMyPrize($event)">我的奖品</div>
<div class="index-start-btn" @click="start"></div>
<div class="index-agreement">
<div class="agreement">
风险提示:
本材料由平安理财有限责任公司(以下简称平安理财)制作并提供<span
class="b"
>本资料内容及观点仅供参考不构成对任何人的投资建议</span
>以上产品投资管理机构/管理人为平安理财代理销售机构不承担产品的投资兑付和风险管理的责任以上产品通过代理销售机构渠道销售的产品风险评级应当以代理销售机构最终披露的评级结果为准以上产品为非保本浮动收益理财产品具体以产品说明书或产品公告披露为准产品的业绩比较基准指管理人基于过往投资经验以及对产品存续期投资市场波动的预判而对本产品所设定的投资目标业绩比较基准不是预期收益率不代表产品的未来表现和实际收益不构成对产品收益的承诺<span
class="b"
>理财产品过往业绩不代表其未来表现不等于理财产品实际收益投资须谨慎过往业绩相关数据已经托管人核对</span
><span class="orange">理财非存款产品有风险投资须谨慎</span
>金融消费者不得利用金融产品和服务从事违法活动
</div>
<span>风险提示:本材料由平安理财有限责任公司(以下简称平安理财)制作并提供</span>
<span class="b">本资料内容及观点仅供参考不构成对任何人的投资建议</span>
<span>以上产品投资管理机构/管理人为平安理财代理销售机构不承担产品的投资兑付和风险管理的责任以上产品通过代理销售机构渠道销售的产品风险评级应当以代理销售机构最终披露的评级结果为准以上产品为非保本浮动收益理财产品具体以产品说明书或产品公告披露为准产品的业绩比较基准指管理人基于过往投资经验以及对产品存续期投资市场波动的预判而对本产品所设定的投资目标业绩比较基准不是预期收益率不代表产品的未来表现和实际收益不构成对产品收益的承诺</span>
<span class="b">理财产品过往业绩不代表其未来表现不等于理财产品实际收益投资须谨慎过往业绩相关数据已经托管人核对</span><span
class="orange">理财非存款产品有风险投资须谨慎</span>
<span>
金融消费者不得利用金融产品和服务从事违法活动
</span>
</div>
</div>
</div>
@@ -161,9 +101,9 @@ const showVC = () => {
<style lang="scss" scoped>
.IndexPage {
@include pos(100%, 100vh, 0px, 0px);
@include pos(100%, 1624px, 0px, 0px);
overflow: hidden;
background: linear-gradient(135deg, #90dcff, #51b7ff);
background: linear-gradient(135deg, #d6d1ca, #e5dccf);
.index-bg {
@include pos(750px, 1624px, 0px, 50%);
@@ -172,93 +112,78 @@ const showVC = () => {
}
.index-container {
@include pos(750px, 1624px, 0px, 50%);
transform: translateY(-50%);
@include pos(750px, 1624px, 0px, 0px);
// transform: translateY(-50%);
// .index-logo{
// pointer-events: none;
// @include pos(632px, 94px, 59px, 267px);
// @include bg_pos("index/logo.png");
// }
.index-logo {
pointer-events: none;
@include pos(632px, 94px, 59px, 266px);
@include bg_pos("index/logo.png");
}
.index-title {
// pointer-events: none;
@include pos(633px, 253px, 46px, 254px);
@include pos(593px, 155px, 85px, 387px);
@include bg_pos("index/title.png");
}
.index-island {
pointer-events: none;
@include pos(714px, 867px, 15px, 542px);
@include bg_pos("index/island.png");
.index-time {
@include pos(433px, 58px, 295px, 565px);
@include bg_pos("index/time.png");
}
.index-cloud-1 {
pointer-events: none;
@include pos(210px, 147px, -15px, 535px);
@include bg_pos("index/cloud-1.png");
}
.index-cloud-2 {
pointer-events: none;
@include pos(151px, 172px, 656px, 486px);
@include bg_pos("index/cloud-2.png");
}
.index-tree-1 {
pointer-events: none;
@include pos(228px, 199px, -45px, 492px);
@include bg_pos("index/tree-1.png");
}
.index-sub-title {
pointer-events: none;
@include pos(423px, 87px, 170px, 486px);
@include bg_pos("index/sub-title.png");
.index-left-btn {
border: 2px solid rgb(255, 255, 255);
background-color: rgb(243, 87, 4);
box-shadow: 0px 6px 11px 0px rgba(155, 122, 68, 0.4);
font-size: 25px;
display: flex;
align-items: center;
justify-content: center;
padding-left: 20px;
color: #ffffff;
letter-spacing: 1.5px;
border-radius: 21px;
}
.index-rule-btn {
@include pos(193px, 50px, 612px, 553px);
@include bg_pos("index/rule-btn.png");
@include pos(184px, 49px, -37px, 578px);
}
.index-prize-btn {
@include pos(184px, 49px, 612px, 615px);
@include bg_pos("index/prize-btn.png");
@include pos(184px, 49px, -37px, 642px);
}
.index-start-btn {
@include pos(423px, 152px, 156px, 1025px);
@include bg_pos("index/start-btn.png");
@include pos(288px, 93px, 231px, 1097px);
@include bg_pos("index/btn.png");
}
.index-agreement {
font-family: "HarmonyOS_Sans_SC_Regular";
font-family: "FZZY_Regular";
pointer-events: none;
@include pos(736px, 182px, 7px, 1230px);
@include pos(736px, 182px, 7px, 1208px);
font-size: 14px;
text-align: justify;
letter-spacing: 0.1px;
color: #ffffff;
padding: 10px;
box-sizing: border-box;
border-radius: 10px;
line-height: 20px;
.agreement {
background-color: rgba(255, 255, 255, 0.75);
font-size: 14px;
text-align: justify;
letter-spacing: 0.1px;
color: #124284;
padding: 10px;
box-sizing: border-box;
border-radius: 2px;
line-height: 20px;
.b {
font-weight: 700;
}
.b {
font-weight: 700;
}
.orange {
color: #f5430c;
font-weight: 700;
}
.orange {
color: #ff7127;
font-weight: 700;
}
}
}
}
</style>