diff --git a/dist.rar b/dist.rar index 2649ca9..24bbba5 100644 Binary files a/dist.rar and b/dist.rar differ diff --git a/src/assets/img/about/latest/001.png b/src/assets/img/about/latest/001.png new file mode 100644 index 0000000..767d46d Binary files /dev/null and b/src/assets/img/about/latest/001.png differ diff --git a/src/assets/img/about/latest/002.png b/src/assets/img/about/latest/002.png new file mode 100644 index 0000000..857b3cf Binary files /dev/null and b/src/assets/img/about/latest/002.png differ diff --git a/src/assets/img/about/latest/003.png b/src/assets/img/about/latest/003.png new file mode 100644 index 0000000..df67531 Binary files /dev/null and b/src/assets/img/about/latest/003.png differ diff --git a/src/assets/img/about/latest/004.png b/src/assets/img/about/latest/004.png new file mode 100644 index 0000000..c839854 Binary files /dev/null and b/src/assets/img/about/latest/004.png differ diff --git a/src/assets/img/about/latest/005.png b/src/assets/img/about/latest/005.png new file mode 100644 index 0000000..d29ac3a Binary files /dev/null and b/src/assets/img/about/latest/005.png differ diff --git a/src/assets/img/home/game-swiper-card/001.png b/src/assets/img/home/game-swiper-card/001.png new file mode 100644 index 0000000..dba5323 Binary files /dev/null and b/src/assets/img/home/game-swiper-card/001.png differ diff --git a/src/assets/img/home/game-swiper-card/002.png b/src/assets/img/home/game-swiper-card/002.png new file mode 100644 index 0000000..704cb85 Binary files /dev/null and b/src/assets/img/home/game-swiper-card/002.png differ diff --git a/src/assets/img/home/game-swiper-card/003.png b/src/assets/img/home/game-swiper-card/003.png new file mode 100644 index 0000000..a571794 Binary files /dev/null and b/src/assets/img/home/game-swiper-card/003.png differ diff --git a/src/assets/img/home/game-swiper-card/004.png b/src/assets/img/home/game-swiper-card/004.png new file mode 100644 index 0000000..5fa3fd7 Binary files /dev/null and b/src/assets/img/home/game-swiper-card/004.png differ diff --git a/src/assets/img/home/game-swiper-card/005.png b/src/assets/img/home/game-swiper-card/005.png new file mode 100644 index 0000000..3c0060f Binary files /dev/null and b/src/assets/img/home/game-swiper-card/005.png differ diff --git a/src/assets/img/home/game-swiper-card/006.png b/src/assets/img/home/game-swiper-card/006.png new file mode 100644 index 0000000..62b2aec Binary files /dev/null and b/src/assets/img/home/game-swiper-card/006.png differ diff --git a/src/assets/img/home/game-swiper-card/01.jpg b/src/assets/img/home/game-swiper-card/01.jpg new file mode 100644 index 0000000..2167af5 Binary files /dev/null and b/src/assets/img/home/game-swiper-card/01.jpg differ diff --git a/src/assets/img/home/game-swiper-card/01.png b/src/assets/img/home/game-swiper-card/01.png deleted file mode 100644 index 47ae972..0000000 Binary files a/src/assets/img/home/game-swiper-card/01.png and /dev/null differ diff --git a/src/assets/img/home/game-swiper-card/02.jpg b/src/assets/img/home/game-swiper-card/02.jpg new file mode 100644 index 0000000..6f7489f Binary files /dev/null and b/src/assets/img/home/game-swiper-card/02.jpg differ diff --git a/src/assets/img/home/game-swiper-card/03.jpg b/src/assets/img/home/game-swiper-card/03.jpg new file mode 100644 index 0000000..ad466c4 Binary files /dev/null and b/src/assets/img/home/game-swiper-card/03.jpg differ diff --git a/src/assets/img/home/game-swiper-card/03.png b/src/assets/img/home/game-swiper-card/03.png deleted file mode 100644 index 2845704..0000000 Binary files a/src/assets/img/home/game-swiper-card/03.png and /dev/null differ diff --git a/src/assets/img/home/game-swiper-card/04.jpg b/src/assets/img/home/game-swiper-card/04.jpg new file mode 100644 index 0000000..b1440a3 Binary files /dev/null and b/src/assets/img/home/game-swiper-card/04.jpg differ diff --git a/src/assets/img/home/game-swiper-card/04.png b/src/assets/img/home/game-swiper-card/04.png deleted file mode 100644 index 186a199..0000000 Binary files a/src/assets/img/home/game-swiper-card/04.png and /dev/null differ diff --git a/src/assets/img/home/game-swiper-card/05.jpg b/src/assets/img/home/game-swiper-card/05.jpg new file mode 100644 index 0000000..7b5fdb7 Binary files /dev/null and b/src/assets/img/home/game-swiper-card/05.jpg differ diff --git a/src/assets/img/home/game-swiper-card/05.png b/src/assets/img/home/game-swiper-card/05.png deleted file mode 100644 index 7332d29..0000000 Binary files a/src/assets/img/home/game-swiper-card/05.png and /dev/null differ diff --git a/src/components/about/IntroductionBanner.vue b/src/components/about/IntroductionBanner.vue index e2078e1..0bb457e 100644 --- a/src/components/about/IntroductionBanner.vue +++ b/src/components/about/IntroductionBanner.vue @@ -24,7 +24,7 @@
-
+
@@ -44,38 +44,18 @@ import { gsap } from "gsap"; import ScrollAnimatedText from "../global/ScrollAnimatedText.vue"; import { ScrollTrigger } from "gsap/ScrollTrigger"; const textElement = ref(null); +const mosterElement = ref(null); gsap.registerPlugin(ScrollTrigger); const slogan = ref(null); -// const animateElement = () => { -// gsap.to(slogan.value, { -// opacity: 1, -// y: 0, -// duration: 1, -// ease: "power2.out", -// }); -// slogan.value.classList.add("animate"); -// }; - -// onMounted(() => { -// ScrollTrigger.create({ -// trigger: slogan.value, -// start: "top-=240px center", -// onEnter: animateElement, -// }); -// }); const handleScroll = () => { const scrollY = window.scrollY; - // 计算透明度和放大比例 const opacity = 1 - Math.min(scrollY / 500, 1); - - // 将最大放大比例从2减小到1.5 const scale = 1 + Math.min(scrollY / 1000, 0.5); - // 设置文本的样式 if (textElement.value) { textElement.value.style.opacity = opacity; textElement.value.style.transform = `scale(${scale})`; @@ -84,6 +64,17 @@ const handleScroll = () => { onMounted(() => { window.addEventListener("scroll", handleScroll); + + if (mosterElement.value) { + mosterElement.value.style.transform = "translateX(950px)"; + } + + gsap.to(mosterElement.value, { + x: 0, + delay: 0.5, + duration: 1, + ease: "power2.out", + }); }); onUnmounted(() => { diff --git a/src/components/about/LatestNews.vue b/src/components/about/LatestNews.vue index cd0debb..36c3286 100644 --- a/src/components/about/LatestNews.vue +++ b/src/components/about/LatestNews.vue @@ -19,6 +19,7 @@ :centeredSlides="true" slidesPerView="3" :spaceBetween="50" + :autoplay="{ delay: 1500, disableOnInteraction: false }" :coverflowEffect="{ rotate: 0, stretch: 10, @@ -32,7 +33,6 @@ }" :modules="modules" :loop="true" - :autoplay="{ delay: 3500, disableOnInteraction: false }" class="mySwiper" ref="myRef" > @@ -46,6 +46,7 @@
--> +
@@ -60,7 +61,7 @@ import { Navigation, Pagination, } from "swiper"; -import { Swiper, SwiperSlide, } from "swiper/vue"; +import { Swiper, SwiperSlide } from "swiper/vue"; import "swiper/css"; import "swiper/css/navigation"; import "swiper/css/thumbs"; @@ -71,37 +72,22 @@ const ratio = ref(0.2); //视差偏移率 const positionY1 = ref(0); //背景Y轴偏移量 const box = ref(null); const myRef = ref(null); -const modules = [Pagination, Autoplay]; +const modules = [Pagination,Autoplay]; const imageList = reactive([ { - imgSrc: new URL( - "@/assets/img/home/game-swiper-card/01.png", - import.meta.url - ).href, + imgSrc: new URL("@/assets/img/about/latest/001.png", import.meta.url).href, }, { - imgSrc: new URL( - "@/assets/img/home/game-swiper-card/02.png", - import.meta.url - ).href, + imgSrc: new URL("@/assets/img/about/latest/002.png", import.meta.url).href, }, { - imgSrc: new URL( - "@/assets/img/home/game-swiper-card/03.png", - import.meta.url - ).href, + imgSrc: new URL("@/assets/img/about/latest/003.png", import.meta.url).href, }, { - imgSrc: new URL( - "@/assets/img/home/game-swiper-card/04.png", - import.meta.url - ).href, + imgSrc: new URL("@/assets/img/about/latest/004.png", import.meta.url).href, }, { - imgSrc: new URL( - "@/assets/img/home/game-swiper-card/05.png", - import.meta.url - ).href, + imgSrc: new URL("@/assets/img/about/latest/005.png", import.meta.url).href, }, ]); @@ -181,6 +167,7 @@ function handleScroll() { .swiper-slide img { display: block; width: 100%; + height: 100%; } .swiper-content { position: relative; @@ -227,4 +214,27 @@ function handleScroll() { padding-top: 136px; padding-bottom: 300px; } +.mySwiper .swiper-slide { + // border: 3px solid #04d8d8; + border-radius: 12px; +} +.mySwiper .swiper-slide:hover { + opacity: 1; + border-radius: 12px; + border: 3px solid #04d8d8; + + cursor: pointer; +} +.mySwiper .swiper-slide-active{ + border-radius: 12px; + border: 3px solid #04d8d8; +} + :deep(.swiper-slide-duplicate.swiper-slide-active){ + border-radius: 12px; + border: 3px solid #04d8d8; +} +.mySwiper .swiper-slide-thumb-active { + // border: 3px solid #04d8d8; + border-radius: 12px; +} diff --git a/src/components/about/Roadmap.vue b/src/components/about/Roadmap.vue index c5746a2..82c52f7 100644 --- a/src/components/about/Roadmap.vue +++ b/src/components/about/Roadmap.vue @@ -112,6 +112,7 @@ onMounted(() => { }); function handleScroll() { + const scrollTop = window.pageYOffset || document.documentElement.scrollTop || @@ -223,7 +224,7 @@ function handleScroll() { border-radius: 12px; background: url("../../assets/img/about/history-bg.png")no-repeat; background-size: contain; - font-size: 16px; + font-size: 15px; font-family: 'Poppins'; font-weight: 400; color: #ffffff; @@ -231,6 +232,7 @@ function handleScroll() { display: flex;flex-direction: column; justify-content:center ; align-items: center; + transition: transform 0.3s; .item{ padding-left: 10px; .text{ @@ -249,6 +251,9 @@ function handleScroll() { } } } + .card-item:hover { + transform: translateY(-10px) scale(1.06); + } } } } diff --git a/src/components/about/VisionMission.vue b/src/components/about/VisionMission.vue index 4ef79d7..16694a7 100644 --- a/src/components/about/VisionMission.vue +++ b/src/components/about/VisionMission.vue @@ -10,7 +10,7 @@
-
+
@@ -66,9 +66,15 @@ import { ref, computed, reactive, onMounted } from "vue"; import Grid9Panel from "./Grid9Panel.vue"; import ScrollAnimatedText from "../global/ScrollAnimatedText.vue"; +import { gsap } from "gsap"; +import { ScrollTrigger } from "gsap/ScrollTrigger"; + +gsap.registerPlugin(ScrollTrigger); const Y1 = ref(0); const ratio = ref(0.2); //视差偏移率 const positionY1 = ref(0); //背景Y轴偏移量 +const contentLeft = ref(null); +const animationTriggered = ref(false); const cardText = [ { name: "Michael Yue", @@ -97,9 +103,25 @@ onMounted(() => { window.addEventListener("scroll", handleScroll); //创建滚动监听,页面滚动回调handleScroll方法 let bgTest = document.getElementById("bgTest"); Y1.value = bgTest.offsetTop * ratio.value; + contentLeftAnimation(); }); - +function contentLeftAnimation() { + gsap.from(contentLeft.value, { + x: -1000, + duration: 1, + ease: "power2.out", + }); +} +function isContentLeftVisible() { + const rect = contentLeft.value.getBoundingClientRect(); + const windowHeight = (window.innerHeight || document.documentElement.clientHeight); + return rect.top <= windowHeight && rect.bottom >= 0; +} function handleScroll() { + if (!animationTriggered.value && isContentLeftVisible()) { + contentLeftAnimation(); + animationTriggered.value = true; + } const scrollTop = window.pageYOffset || document.documentElement.scrollTop || @@ -110,8 +132,6 @@ function handleScroll() {