diff --git a/src/components/DeviceOnlineEffects.vue b/src/components/DeviceOnlineEffects.vue
new file mode 100644
index 0000000..a039ae5
--- /dev/null
+++ b/src/components/DeviceOnlineEffects.vue
@@ -0,0 +1,399 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/device/my-device.vue b/src/pages/device/my-device.vue
index 2a4f61f..cbb50fe 100644
--- a/src/pages/device/my-device.vue
+++ b/src/pages/device/my-device.vue
@@ -2,6 +2,7 @@
import { computed, onMounted, onUnmounted, ref, watch } from "vue";
import { onLoad, onShow } from "@dcloudio/uni-app";
import Container from "@/components/Container.vue";
+import DeviceOnlineEffects from "@/components/DeviceOnlineEffects.vue";
import Header from "@/components/Header.vue";
import ScreenHint from "@/components/ScreenHint.vue";
import ModalDialog from "@/components/ModalDialog.vue";
@@ -510,10 +511,17 @@ onShow(async () => {
src="../../static/home-device/device-platform.png"
mode="widthFix"
/>
+
@@ -948,7 +956,7 @@ onShow(async () => {
transform: translateY(0);
}
50% {
- transform: translateY(-10rpx);
+ transform: translateY(-20rpx);
}
}
@@ -956,6 +964,7 @@ onShow(async () => {
position: absolute;
top: 214rpx;
left: 50%;
+ z-index: 1;
width: 750rpx;
transform: translateX(-50%);
}
@@ -964,10 +973,15 @@ onShow(async () => {
position: absolute;
top: 0;
left: 50%;
+ z-index: 4;
width: 562rpx;
transform: translateX(-50%);
}
+.device-bow--online {
+ height: 466rpx;
+}
+
.device-heading {
position: relative;
z-index: 2;
diff --git a/src/pages/index.vue b/src/pages/index.vue
index 9a3a965..b9e65c3 100644
--- a/src/pages/index.vue
+++ b/src/pages/index.vue
@@ -6,6 +6,7 @@ import AppFooter from "@/components/AppFooter.vue";
import UserHeader from "@/components/UserHeader.vue";
import Signin from "@/components/Signin.vue";
import BubbleTip from "@/components/BubbleTip.vue";
+import DeviceOnlineEffects from "@/components/DeviceOnlineEffects.vue";
import ModalDialog from "@/components/ModalDialog.vue";
import OtaModal from "@/components/OtaModal.vue";
@@ -60,6 +61,7 @@ const deviceCardAssets = {
},
online: {
bow: "../static/home-device/device-bow--online.png",
+ platform: "../static/home-device/device-platform-glow--online.png",
background: "../static/home-device/device-card-bg--bound.png",
actionBackground: "../static/home-device/device-action-bg--device.png",
},
@@ -483,8 +485,28 @@ onShareTimeline(() => {
mode="scaleToFill"
/>
+
+
+
+
+
@@ -686,6 +708,8 @@ onShareTimeline(() => {
}
.device-visual-background,
+.device-visual-platform-glow,
+.device-visual-float-group,
.device-visual-bow {
display: flex;
position: absolute;
@@ -697,6 +721,26 @@ onShareTimeline(() => {
left: 0;
width: 100%;
height: 100%;
+ z-index: 0;
+}
+
+.device-visual-platform-glow {
+ left: 0;
+ bottom: 0;
+ z-index: 2;
+ width: 100%;
+ height: 100%;
+ transform-origin: center bottom;
+ animation: device-platform-glow 3.6s ease-in-out -1.1s infinite;
+}
+
+.device-visual-float-group {
+ top: 0;
+ left: 0;
+ z-index: 5;
+ width: 100%;
+ height: 388rpx;
+ animation: device-bow-float 3s ease-in-out infinite;
}
.device-visual-bow {
@@ -706,17 +750,27 @@ onShareTimeline(() => {
height: 388rpx;
}
-.device-visual-bow--floating {
- animation: device-bow-float 3s ease-in-out infinite;
+.device-visual-bow--online {
+ z-index: 1;
}
@keyframes device-bow-float {
0%,
100% {
- transform: translateY(0) rotate(-0.5deg);
+ transform: translateY(0);
}
50% {
- transform: translateY(-10rpx) rotate(0.5deg);
+ transform: translateY(-20rpx);
+ }
+}
+
+@keyframes device-platform-glow {
+ 0%,
+ 100% {
+ opacity: 0.92;
+ }
+ 50% {
+ opacity: 1;
}
}
@@ -730,7 +784,7 @@ onShareTimeline(() => {
position: absolute;
top: 10rpx;
right: 14rpx;
- z-index: 2;
+ z-index: 6;
height: 34rpx;
color: #ffffff;
font-family: Inter-Regular, sans-serif;
@@ -802,7 +856,7 @@ onShareTimeline(() => {
position: absolute;
bottom: 28rpx;
left: 50%;
- z-index: 2;
+ z-index: 6;
width: 218rpx;
height: 56rpx;
justify-content: center;
diff --git a/src/static/home-device/device-bow--online.png b/src/static/home-device/device-bow--online.png
index 80109f5..867f7b6 100644
Binary files a/src/static/home-device/device-bow--online.png and b/src/static/home-device/device-bow--online.png differ
diff --git a/src/static/home-device/device-card-bg--bound.png b/src/static/home-device/device-card-bg--bound.png
index 1a8aa09..bb01319 100644
Binary files a/src/static/home-device/device-card-bg--bound.png and b/src/static/home-device/device-card-bg--bound.png differ
diff --git a/src/static/home-device/device-platform-glow--online.png b/src/static/home-device/device-platform-glow--online.png
new file mode 100644
index 0000000..bb01319
Binary files /dev/null and b/src/static/home-device/device-platform-glow--online.png differ
diff --git a/src/static/home-device/device-platform.png b/src/static/home-device/device-platform.png
index 1f177ac..6292bce 100644
Binary files a/src/static/home-device/device-platform.png and b/src/static/home-device/device-platform.png differ