fix
This commit is contained in:
parent
bc19ac46d3
commit
94bef74e15
14
package-lock.json
generated
14
package-lock.json
generated
@ -12,6 +12,7 @@
|
|||||||
"@animxyz/vue3": "^0.6.7",
|
"@animxyz/vue3": "^0.6.7",
|
||||||
"@esbuild-plugins/node-globals-polyfill": "^0.2.3",
|
"@esbuild-plugins/node-globals-polyfill": "^0.2.3",
|
||||||
"@metamask/safe-event-emitter": "^2.0.0",
|
"@metamask/safe-event-emitter": "^2.0.0",
|
||||||
|
"@vue/runtime-dom": "^3.2.47",
|
||||||
"@vueuse/core": "^9.12.0",
|
"@vueuse/core": "^9.12.0",
|
||||||
"@walletconnect/web3-provider": "^1.8.0",
|
"@walletconnect/web3-provider": "^1.8.0",
|
||||||
"ant-design-vue": "^3.2.15",
|
"ant-design-vue": "^3.2.15",
|
||||||
@ -24,7 +25,6 @@
|
|||||||
"postcss-px-to-viewport": "^1.1.1",
|
"postcss-px-to-viewport": "^1.1.1",
|
||||||
"process": "^0.11.10",
|
"process": "^0.11.10",
|
||||||
"rollup-plugin-polyfill-node": "^0.12.0",
|
"rollup-plugin-polyfill-node": "^0.12.0",
|
||||||
"scrollama": "^3.2.0",
|
|
||||||
"stream-browserify": "^3.0.0",
|
"stream-browserify": "^3.0.0",
|
||||||
"swiper": "8",
|
"swiper": "8",
|
||||||
"util": "^0.12.5",
|
"util": "^0.12.5",
|
||||||
@ -32,7 +32,6 @@
|
|||||||
"videojs-flash": "^2.2.1",
|
"videojs-flash": "^2.2.1",
|
||||||
"vue": "^3.2.45",
|
"vue": "^3.2.45",
|
||||||
"vue-3d-loader": "^2.1.5",
|
"vue-3d-loader": "^2.1.5",
|
||||||
"vue-demi": "^0.13.11",
|
|
||||||
"vue-router": "^4.1.6",
|
"vue-router": "^4.1.6",
|
||||||
"web3": "^1.8.2",
|
"web3": "^1.8.2",
|
||||||
"youtube-player": "^5.6.0"
|
"youtube-player": "^5.6.0"
|
||||||
@ -1804,7 +1803,6 @@
|
|||||||
"version": "3.2.47",
|
"version": "3.2.47",
|
||||||
"resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.47.tgz",
|
"resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.47.tgz",
|
||||||
"integrity": "sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==",
|
"integrity": "sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==",
|
||||||
"license": "MIT",
|
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@vue/runtime-core": "3.2.47",
|
"@vue/runtime-core": "3.2.47",
|
||||||
"@vue/shared": "3.2.47",
|
"@vue/shared": "3.2.47",
|
||||||
@ -8677,11 +8675,6 @@
|
|||||||
"compute-scroll-into-view": "^1.0.20"
|
"compute-scroll-into-view": "^1.0.20"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/scrollama": {
|
|
||||||
"version": "3.2.0",
|
|
||||||
"resolved": "https://registry.npmmirror.com/scrollama/-/scrollama-3.2.0.tgz",
|
|
||||||
"integrity": "sha512-PIPwB1kYBnbw/ezvPBJa5dCN5qEwokfpAkI3BmpZWAwcVID4nDf1qH6WV16A2fQaJmsKx0un5S/zhxN+PQeKDQ=="
|
|
||||||
},
|
|
||||||
"node_modules/scrypt-js": {
|
"node_modules/scrypt-js": {
|
||||||
"version": "3.0.1",
|
"version": "3.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/scrypt-js/-/scrypt-js-3.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/scrypt-js/-/scrypt-js-3.0.1.tgz",
|
||||||
@ -17524,11 +17517,6 @@
|
|||||||
"compute-scroll-into-view": "^1.0.20"
|
"compute-scroll-into-view": "^1.0.20"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"scrollama": {
|
|
||||||
"version": "3.2.0",
|
|
||||||
"resolved": "https://registry.npmmirror.com/scrollama/-/scrollama-3.2.0.tgz",
|
|
||||||
"integrity": "sha512-PIPwB1kYBnbw/ezvPBJa5dCN5qEwokfpAkI3BmpZWAwcVID4nDf1qH6WV16A2fQaJmsKx0un5S/zhxN+PQeKDQ=="
|
|
||||||
},
|
|
||||||
"scrypt-js": {
|
"scrypt-js": {
|
||||||
"version": "3.0.1",
|
"version": "3.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/scrypt-js/-/scrypt-js-3.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/scrypt-js/-/scrypt-js-3.0.1.tgz",
|
||||||
|
@ -14,6 +14,7 @@
|
|||||||
"@animxyz/vue3": "^0.6.7",
|
"@animxyz/vue3": "^0.6.7",
|
||||||
"@esbuild-plugins/node-globals-polyfill": "^0.2.3",
|
"@esbuild-plugins/node-globals-polyfill": "^0.2.3",
|
||||||
"@metamask/safe-event-emitter": "^2.0.0",
|
"@metamask/safe-event-emitter": "^2.0.0",
|
||||||
|
"@vue/runtime-dom": "^3.2.47",
|
||||||
"@vueuse/core": "^9.12.0",
|
"@vueuse/core": "^9.12.0",
|
||||||
"@walletconnect/web3-provider": "^1.8.0",
|
"@walletconnect/web3-provider": "^1.8.0",
|
||||||
"ant-design-vue": "^3.2.15",
|
"ant-design-vue": "^3.2.15",
|
||||||
@ -26,7 +27,6 @@
|
|||||||
"postcss-px-to-viewport": "^1.1.1",
|
"postcss-px-to-viewport": "^1.1.1",
|
||||||
"process": "^0.11.10",
|
"process": "^0.11.10",
|
||||||
"rollup-plugin-polyfill-node": "^0.12.0",
|
"rollup-plugin-polyfill-node": "^0.12.0",
|
||||||
"scrollama": "^3.2.0",
|
|
||||||
"stream-browserify": "^3.0.0",
|
"stream-browserify": "^3.0.0",
|
||||||
"swiper": "8",
|
"swiper": "8",
|
||||||
"util": "^0.12.5",
|
"util": "^0.12.5",
|
||||||
@ -34,7 +34,6 @@
|
|||||||
"videojs-flash": "^2.2.1",
|
"videojs-flash": "^2.2.1",
|
||||||
"vue": "^3.2.45",
|
"vue": "^3.2.45",
|
||||||
"vue-3d-loader": "^2.1.5",
|
"vue-3d-loader": "^2.1.5",
|
||||||
"vue-demi": "^0.13.11",
|
|
||||||
"vue-router": "^4.1.6",
|
"vue-router": "^4.1.6",
|
||||||
"web3": "^1.8.2",
|
"web3": "^1.8.2",
|
||||||
"youtube-player": "^5.6.0"
|
"youtube-player": "^5.6.0"
|
||||||
|
@ -13,8 +13,12 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="slogan">
|
<div class="slogan">
|
||||||
<div>
|
<div>
|
||||||
|
<ScrollAnimatedText>
|
||||||
CEBG is the first blockchain-based animation game which consists of
|
CEBG is the first blockchain-based animation game which consists of
|
||||||
Moba, Battleroyal; funded by more than 7 institutional investors.
|
Moba, Battleroyal; funded by more than 7 institutional
|
||||||
|
investors.
|
||||||
|
</ScrollAnimatedText
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="more">
|
<div class="more">
|
||||||
@ -27,7 +31,9 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup></script>
|
<script setup>
|
||||||
|
import ScrollAnimatedText from "../global/ScrollAnimatedText.vue";
|
||||||
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.whitepaper {
|
.whitepaper {
|
||||||
@ -81,7 +87,7 @@
|
|||||||
margin-left: 64px;
|
margin-left: 64px;
|
||||||
padding-bottom: 52px;
|
padding-bottom: 52px;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
font-family: 'Poppins';
|
font-family: "Poppins";
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
line-height: 26px;
|
line-height: 26px;
|
||||||
|
43
src/components/global/AnimatedTitle.vue
Normal file
43
src/components/global/AnimatedTitle.vue
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
<template>
|
||||||
|
<div class="animated-title">
|
||||||
|
<transition-group name="bounce" tag="div">
|
||||||
|
<span v-for="(char, index) in titleChars" :key="index">{{ char }}</span>
|
||||||
|
</transition-group>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { computed } from 'vue';
|
||||||
|
|
||||||
|
const props = defineProps({
|
||||||
|
title: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const titleChars = computed(() => props.title.split(''));
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.bounce-enter-active {
|
||||||
|
animation: bounce-in 0.5s ease;
|
||||||
|
}
|
||||||
|
.bounce-leave-active {
|
||||||
|
animation: bounce-in 0.5s ease reverse;
|
||||||
|
}
|
||||||
|
@keyframes bounce-in {
|
||||||
|
0% {
|
||||||
|
transform: translateY(100%);
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
50% {
|
||||||
|
transform: translateY(-10%);
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
transform: translateY(0);
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
57
src/components/global/FadeInText.vue
Normal file
57
src/components/global/FadeInText.vue
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
<template>
|
||||||
|
<span :style="{ fontSize: fontSize, color: textColor }" ref="text">
|
||||||
|
<slot></slot>
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { defineProps, onMounted, ref } from "vue";
|
||||||
|
|
||||||
|
const props = defineProps({
|
||||||
|
fontSize: {
|
||||||
|
type: String,
|
||||||
|
default: "16px",
|
||||||
|
},
|
||||||
|
textColor: {
|
||||||
|
type: String,
|
||||||
|
default: "",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
const text = ref(null);
|
||||||
|
|
||||||
|
const fadeIn = (el) => {
|
||||||
|
el.style.opacity = 0;
|
||||||
|
el.style.transform = "translateY(90px)";
|
||||||
|
const observer = new IntersectionObserver((entries) => {
|
||||||
|
entries.forEach((entry) => {
|
||||||
|
if (entry.isIntersecting) {
|
||||||
|
el.style.transition = "opacity 2s ease, transform 2s ease";
|
||||||
|
el.style.opacity = 1;
|
||||||
|
el.style.transform = "translateY(0)";
|
||||||
|
observer.disconnect();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}, {});
|
||||||
|
|
||||||
|
observer.observe(el);
|
||||||
|
};
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
fadeIn(text.value);
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
span {
|
||||||
|
display: inline-block;
|
||||||
|
font-family: "Poppins";
|
||||||
|
font-weight: bold;
|
||||||
|
line-height: 28px;
|
||||||
|
word-spacing: 2px;
|
||||||
|
background-clip: text;
|
||||||
|
color: black;
|
||||||
|
-webkit-background-clip: text;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -6,24 +6,48 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="grid">
|
<div class="grid">
|
||||||
<div class="grid-item-red"> <img src="@/assets/img/home/chip/red-chip-01.png" alt="" /></div>
|
<div class="grid-item-red">
|
||||||
<div class="grid-item-red"> <img src="@/assets/img/home/chip/red-chip-02.png" alt="" /></div>
|
<img src="@/assets/img/home/chip/red-chip-01.png" alt="" />
|
||||||
<div class="grid-item-red"> <img src="@/assets/img/home/chip/red-chip-03.png" alt="" /></div>
|
</div>
|
||||||
<div class="grid-item-red"> <img src="@/assets/img/home/chip/red-chip-04.png" alt="" /></div>
|
<div class="grid-item-red">
|
||||||
|
<img src="@/assets/img/home/chip/red-chip-02.png" alt="" />
|
||||||
|
</div>
|
||||||
|
<div class="grid-item-red">
|
||||||
|
<img src="@/assets/img/home/chip/red-chip-03.png" alt="" />
|
||||||
|
</div>
|
||||||
|
<div class="grid-item-red">
|
||||||
|
<img src="@/assets/img/home/chip/red-chip-04.png" alt="" />
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="grid">
|
<div class="grid">
|
||||||
<div class="grid-item-yellow"> <img src="@/assets/img/home/chip/yellow-chip-01.png" alt="" /></div>
|
<div class="grid-item-yellow">
|
||||||
<div class="grid-item-yellow"> <img src="@/assets/img/home/chip/yellow-chip-02.png" alt="" /></div>
|
<img src="@/assets/img/home/chip/yellow-chip-01.png" alt="" />
|
||||||
<div class="grid-item-yellow"> <img src="@/assets/img/home/chip/yellow-chip-03.png" alt="" /></div>
|
</div>
|
||||||
<div class="grid-item-yellow"> <img src="@/assets/img/home/chip/yellow-chip-04.png" alt="" /></div>
|
<div class="grid-item-yellow">
|
||||||
|
<img src="@/assets/img/home/chip/yellow-chip-02.png" alt="" />
|
||||||
|
</div>
|
||||||
|
<div class="grid-item-yellow">
|
||||||
|
<img src="@/assets/img/home/chip/yellow-chip-03.png" alt="" />
|
||||||
|
</div>
|
||||||
|
<div class="grid-item-yellow">
|
||||||
|
<img src="@/assets/img/home/chip/yellow-chip-04.png" alt="" />
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="grid">
|
<div class="grid">
|
||||||
<div class="grid-item-blue"> <img src="@/assets/img/home/chip/blue-chip-01.png" alt="" /></div>
|
<div class="grid-item-blue">
|
||||||
<div class="grid-item-blue"> <img src="@/assets/img/home/chip/blue-chip-02.png" alt="" /></div>
|
<img src="@/assets/img/home/chip/blue-chip-01.png" alt="" />
|
||||||
<div class="grid-item-blue"> <img src="@/assets/img/home/chip/blue-chip-03.png" alt="" /></div>
|
</div>
|
||||||
<div class="grid-item-blue"> <img src="@/assets/img/home/chip/blue-chip-04.png" alt="" /></div>
|
<div class="grid-item-blue">
|
||||||
|
<img src="@/assets/img/home/chip/blue-chip-02.png" alt="" />
|
||||||
|
</div>
|
||||||
|
<div class="grid-item-blue">
|
||||||
|
<img src="@/assets/img/home/chip/blue-chip-03.png" alt="" />
|
||||||
|
</div>
|
||||||
|
<div class="grid-item-blue">
|
||||||
|
<img src="@/assets/img/home/chip/blue-chip-04.png" alt="" />
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -39,9 +63,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup></script>
|
||||||
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.chip-container {
|
.chip-container {
|
||||||
@ -100,14 +122,20 @@
|
|||||||
grid-row-gap: 40px;
|
grid-row-gap: 40px;
|
||||||
width: 370px;
|
width: 370px;
|
||||||
}
|
}
|
||||||
.grid-item-red {
|
.grid-item-red,
|
||||||
height: 200px;
|
.grid-item-yellow,
|
||||||
}
|
|
||||||
.grid-item-yellow {
|
|
||||||
height: 200px;
|
|
||||||
}
|
|
||||||
.grid-item-blue {
|
.grid-item-blue {
|
||||||
|
cursor: pointer;
|
||||||
height: 200px;
|
height: 200px;
|
||||||
|
transition: transform 0.3s; // 添加过渡效果
|
||||||
|
position: relative; // 使 z-index 生效
|
||||||
|
z-index: 1; // 设置 z-index
|
||||||
|
}
|
||||||
|
|
||||||
|
.grid-item-red:hover,
|
||||||
|
.grid-item-yellow:hover,
|
||||||
|
.grid-item-blue:hover {
|
||||||
|
transform: translateY(-12px) scale(1.05); // 鼠标悬停时上移 10px
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -22,7 +22,9 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="slogan">
|
<div class="slogan">
|
||||||
<div class="slogan-text">
|
<div class="slogan-text">
|
||||||
|
<ScrollAnimatedText>
|
||||||
Come to be COMMENDER! Enjoy 3D CEBG and fight against other players!
|
Come to be COMMENDER! Enjoy 3D CEBG and fight against other players!
|
||||||
|
</ScrollAnimatedText>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -48,8 +50,10 @@
|
|||||||
<img src="@/assets/img/home/gameplay-bottom-boder.png" alt="" />
|
<img src="@/assets/img/home/gameplay-bottom-boder.png" alt="" />
|
||||||
</div>
|
</div>
|
||||||
<div class="sloagn">
|
<div class="sloagn">
|
||||||
|
<ScrollAnimatedText>
|
||||||
Undefinable pattern, incredible gaming experience and excited NFT in
|
Undefinable pattern, incredible gaming experience and excited NFT in
|
||||||
CEBG!
|
CEBG!
|
||||||
|
</ScrollAnimatedText>
|
||||||
</div>
|
</div>
|
||||||
<DameplaySwiperCard></DameplaySwiperCard>
|
<DameplaySwiperCard></DameplaySwiperCard>
|
||||||
</div>
|
</div>
|
||||||
@ -63,6 +67,7 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
import { ref, computed, reactive, onMounted } from "vue";
|
import { ref, computed, reactive, onMounted } from "vue";
|
||||||
import DameplaySwiperCard from "./DameplaySwiperCard.vue";
|
import DameplaySwiperCard from "./DameplaySwiperCard.vue";
|
||||||
|
import ScrollAnimatedText from "../global/ScrollAnimatedText.vue";
|
||||||
import { Swiper, SwiperSlide } from "swiper/vue";
|
import { Swiper, SwiperSlide } from "swiper/vue";
|
||||||
import GalleryBanner from "./GalleryBanner.vue";
|
import GalleryBanner from "./GalleryBanner.vue";
|
||||||
// 引入swiper样式(按需导入)
|
// 引入swiper样式(按需导入)
|
||||||
|
@ -70,19 +70,20 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="pve-content">
|
<div class="pve-content">
|
||||||
<div class="slogan">
|
<div class="slogan">
|
||||||
<span class="title">
|
<FadeInText class="slogan-title" font-size="24px">
|
||||||
Each battle contains 40 players by matching </span
|
Each battle contains 40 players by matching
|
||||||
><br />
|
</FadeInText>
|
||||||
<span v-if="!isPveTab"
|
<br />
|
||||||
>A player should expect to face the majority or entirety of
|
<FadeInText v-if="!isPveTab" font-size="16px">
|
||||||
|
A player should expect to face the majority or entirety of
|
||||||
their opponents in the form of computer-controlled
|
their opponents in the form of computer-controlled
|
||||||
opponents.
|
opponents.
|
||||||
</span>
|
</FadeInText>
|
||||||
<span v-else
|
<FadeInText v-else font-size="16px">
|
||||||
>Stands for Player versus Player. It’s a game mode that
|
Stands for Player versus Player. It’s a game mode that
|
||||||
revolves around layer-against-player combat - combat between
|
revolves around layer-against-player combat - combat between
|
||||||
actual human players.
|
actual human players.
|
||||||
</span>
|
</FadeInText>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -109,6 +110,8 @@
|
|||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref, onMounted, onBeforeUnmount } from "vue";
|
import { ref, onMounted, onBeforeUnmount } from "vue";
|
||||||
|
import ScrollAnimatedText from "../global/ScrollAnimatedText.vue";
|
||||||
|
import FadeInText from "../global/FadeInText.vue";
|
||||||
import Text from "./Text.vue";
|
import Text from "./Text.vue";
|
||||||
import Moster from "./Moster.vue";
|
import Moster from "./Moster.vue";
|
||||||
import { gsap } from "gsap";
|
import { gsap } from "gsap";
|
||||||
@ -147,17 +150,15 @@ function handleScroll() {
|
|||||||
positionY1.value = Y1.value - scrollTop * ratio.value; //原始高度-滚动距离*视差系数
|
positionY1.value = Y1.value - scrollTop * ratio.value; //原始高度-滚动距离*视差系数
|
||||||
}
|
}
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
window.addEventListener('scroll', onScroll);
|
window.addEventListener("scroll", onScroll);
|
||||||
window.addEventListener("scroll", handleScroll); //创建滚动监听,页面滚动回调handleScroll方法
|
window.addEventListener("scroll", handleScroll); //创建滚动监听,页面滚动回调handleScroll方法
|
||||||
let bgTest = document.getElementById("bgTest");
|
let bgTest = document.getElementById("bgTest");
|
||||||
|
|
||||||
Y1.value = bgTest.offsetTop * ratio.value;
|
Y1.value = bgTest.offsetTop * ratio.value;
|
||||||
});
|
});
|
||||||
onBeforeUnmount(() => {
|
onBeforeUnmount(() => {
|
||||||
window.removeEventListener('scroll', onScroll);
|
window.removeEventListener("scroll", onScroll);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@ -280,7 +281,7 @@ onBeforeUnmount(() => {
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
letter-spacing: 2px;
|
letter-spacing: 2px;
|
||||||
font-family: 'Poppins';
|
font-family: "Poppins";
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
|
@ -882,7 +882,7 @@
|
|||||||
"@vue/reactivity" "3.2.47"
|
"@vue/reactivity" "3.2.47"
|
||||||
"@vue/shared" "3.2.47"
|
"@vue/shared" "3.2.47"
|
||||||
|
|
||||||
"@vue/runtime-dom@3.2.47":
|
"@vue/runtime-dom@^3.2.47", "@vue/runtime-dom@3.2.47":
|
||||||
"integrity" "sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA=="
|
"integrity" "sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA=="
|
||||||
"resolved" "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.47.tgz"
|
"resolved" "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.47.tgz"
|
||||||
"version" "3.2.47"
|
"version" "3.2.47"
|
||||||
@ -5302,11 +5302,6 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
"compute-scroll-into-view" "^1.0.20"
|
"compute-scroll-into-view" "^1.0.20"
|
||||||
|
|
||||||
"scrollama@^3.2.0":
|
|
||||||
"integrity" "sha512-PIPwB1kYBnbw/ezvPBJa5dCN5qEwokfpAkI3BmpZWAwcVID4nDf1qH6WV16A2fQaJmsKx0un5S/zhxN+PQeKDQ=="
|
|
||||||
"resolved" "https://registry.npmmirror.com/scrollama/-/scrollama-3.2.0.tgz"
|
|
||||||
"version" "3.2.0"
|
|
||||||
|
|
||||||
"scrypt-js@^3.0.0", "scrypt-js@^3.0.1":
|
"scrypt-js@^3.0.0", "scrypt-js@^3.0.1":
|
||||||
"integrity" "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA=="
|
"integrity" "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA=="
|
||||||
"resolved" "https://registry.npmmirror.com/scrypt-js/-/scrypt-js-3.0.1.tgz"
|
"resolved" "https://registry.npmmirror.com/scrypt-js/-/scrypt-js-3.0.1.tgz"
|
||||||
@ -6114,7 +6109,7 @@
|
|||||||
"three" "^0.143.0"
|
"three" "^0.143.0"
|
||||||
"vue" "^3.2.25"
|
"vue" "^3.2.25"
|
||||||
|
|
||||||
"vue-demi@*", "vue-demi@^0.13.11":
|
"vue-demi@*":
|
||||||
"integrity" "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A=="
|
"integrity" "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A=="
|
||||||
"resolved" "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz"
|
"resolved" "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz"
|
||||||
"version" "0.13.11"
|
"version" "0.13.11"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user