Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
飞
飞鹤小程序
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
FH
飞鹤小程序
Commits
bb7eb5d0
Commit
bb7eb5d0
authored
Oct 27, 2025
by
王炽
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
66666
parent
5aef76d0
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
86 additions
and
12 deletions
+86
-12
SignedTips.less
components/qiandao/SignedTips.less
+67
-7
SignedTips.vue
components/qiandao/SignedTips.vue
+19
-4
Integral.vue
views/Integral.vue
+0
-1
No files found.
components/qiandao/SignedTips.less
View file @
bb7eb5d0
...
...
@@ -54,13 +54,73 @@
}
}
.signedbg_icon_container {
position: fixed;
top: 50%;
left: 50%;
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
pointer-events: none;
z-index: 10;
.signedbg_icon {
position: absolute
;
position: fixed
;
width: 122rpx;
height: 122rpx;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
z-index: 2;
}
.signedbg_icon_animating {
animation: signedIconFly 1.5s linear 1;
z-index: 5;
}
}
}
/* 金币飞向右下角动画 - 适配不同屏幕 */
@keyframes signedIconFly {
0% {
transform: translate(-50%, -50%) scale(1.3) rotate(0deg);
opacity: 1;
}
15% {
transform: translate(calc(-50% + 80rpx), calc(-50% + 100rpx)) scale(1.25) rotate(8deg);
opacity: 1;
}
30% {
transform: translate(calc(-50% + 140rpx), calc(-50% + 220rpx)) scale(1.2) rotate(14deg);
opacity: 1;
}
45% {
transform: translate(calc(-50% + 180rpx), calc(-50% + 340rpx)) scale(1.1) rotate(15deg);
opacity: 0.95;
}
60% {
transform: translate(calc(-50% + 205rpx), calc(-50% + 420rpx)) scale(0.95) rotate(20deg);
opacity: 0.85;
}
75% {
transform: translate(calc(-50% + 215rpx), calc(-50% + 480rpx)) scale(0.6) rotate(30deg);
opacity: 0.7;
}
90% {
transform: translate(calc(-50% + 220rpx), calc(-50% + 530rpx)) scale(0.25) rotate(40deg);
opacity: 0.4;
}
100% {
transform: translate(calc(-50% + 225rpx), calc(-50% + 580rpx)) scale(0) rotate(45deg);
opacity: 0;
}
}
components/qiandao/SignedTips.vue
View file @
bb7eb5d0
...
...
@@ -8,12 +8,14 @@
<image
class=
"tips_title"
:src=
"$baseUrl + `integral/1023/signedTitle.png`"
mode=
"aspectFit"
/>
<text
class=
"points_text"
>
获得
{{
points
}}
积分
</text>
</view>
<image
class=
"signedbg_icon"
:src=
"$baseUrl + `integral/1023/jifenIcon1.png`"
mode=
"aspectFit"
/>
<view
class=
"signedbg_icon_container"
>
<image
class=
"signedbg_icon"
:class=
"
{ 'signedbg_icon_animating': isAnimating }" :src="$baseUrl + `integral/1023/jifenIcon1.png`" mode="aspectFit" />
</view>
</view>
</
template
>
<
script
setup
>
import
{
defineProps
,
defineEmits
}
from
'vue'
;
import
{
defineProps
,
defineEmits
,
ref
,
watch
}
from
'vue'
;
// Props 定义
const
props
=
defineProps
({
...
...
@@ -30,9 +32,22 @@ const props = defineProps({
// Emits 定义
const
emit
=
defineEmits
([
'close'
]);
// 关闭弹窗
// 是否正在播放动画
const
isAnimating
=
ref
(
false
);
// 关闭弹窗 - 点击时播放动画,动画结束后关闭
const
handleClose
=
()
=>
{
// 如果正在播放动画,则不重复触发
if
(
isAnimating
.
value
)
return
;
// 开始播放动画
isAnimating
.
value
=
true
;
// 动画播放完毕后(1.5秒)关闭弹窗
setTimeout
(()
=>
{
isAnimating
.
value
=
false
;
emit
(
'close'
);
},
1500
);
};
</
script
>
...
...
views/Integral.vue
View file @
bb7eb5d0
...
...
@@ -1813,7 +1813,6 @@ onShow(async () => {
onMounted
(
async
()
=>
{
showLoading
();
showSignedTips
.
value
=
true
;
// maxVal.value = getHuangjinMaxVal();
mdMap
.
value
=
[];
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment