|
@@ -46,7 +46,8 @@ export default defineComponent({
|
|
durationNum: 0,
|
|
durationNum: 0,
|
|
duration: '00:00',
|
|
duration: '00:00',
|
|
showBar: true,
|
|
showBar: true,
|
|
- afterMa3: true
|
|
|
|
|
|
+ afterMa3: true,
|
|
|
|
+ timer: null as any
|
|
});
|
|
});
|
|
const canvas: any = ref();
|
|
const canvas: any = ref();
|
|
const audio: any = ref();
|
|
const audio: any = ref();
|
|
@@ -59,8 +60,13 @@ export default defineComponent({
|
|
onInit(audio.value, canvas.value);
|
|
onInit(audio.value, canvas.value);
|
|
audio.value.play();
|
|
audio.value.play();
|
|
audioForms.afterMa3 = false;
|
|
audioForms.afterMa3 = false;
|
|
|
|
+
|
|
|
|
+ setModelOpen();
|
|
} else {
|
|
} else {
|
|
audio.value.pause();
|
|
audio.value.pause();
|
|
|
|
+
|
|
|
|
+ clearTimeout(audioForms.timer);
|
|
|
|
+ audioForms.showBar = true;
|
|
}
|
|
}
|
|
audioForms.paused = audio.value.paused;
|
|
audioForms.paused = audio.value.paused;
|
|
};
|
|
};
|
|
@@ -177,8 +183,25 @@ export default defineComponent({
|
|
}
|
|
}
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+ /** 延迟收起模态框 */
|
|
|
|
+ const setModelOpen2 = () => {
|
|
|
|
+ clearTimeout(audioForms.timer);
|
|
|
|
+ audioForms.showBar = !audioForms.showBar;
|
|
|
|
+ audioForms.timer = setTimeout(() => {
|
|
|
|
+ audioForms.showBar = false;
|
|
|
|
+ }, 3000);
|
|
|
|
+ };
|
|
|
|
+ /** 延迟收起模态框 */
|
|
|
|
+ const setModelOpen = () => {
|
|
|
|
+ clearTimeout(audioForms.timer);
|
|
|
|
+ audioForms.showBar = true;
|
|
|
|
+ audioForms.timer = setTimeout(() => {
|
|
|
|
+ audioForms.showBar = false;
|
|
|
|
+ }, 3000);
|
|
|
|
+ };
|
|
|
|
+
|
|
return () => (
|
|
return () => (
|
|
- <div class={styles.audioWrap} id={videoId}>
|
|
|
|
|
|
+ <div class={styles.audioWrap} id={videoId} onClick={setModelOpen2}>
|
|
<div class={styles.audioContainer}>
|
|
<div class={styles.audioContainer}>
|
|
<audio
|
|
<audio
|
|
ref={audio}
|
|
ref={audio}
|
|
@@ -187,6 +210,10 @@ export default defineComponent({
|
|
onEnded={() => {
|
|
onEnded={() => {
|
|
audioForms.paused = true;
|
|
audioForms.paused = true;
|
|
}}
|
|
}}
|
|
|
|
+ onPause={() => {
|
|
|
|
+ clearTimeout(audioForms.timer);
|
|
|
|
+ audioForms.showBar = true;
|
|
|
|
+ }}
|
|
onTimeupdate={() => {
|
|
onTimeupdate={() => {
|
|
audioForms.currentTime = timeFormat(
|
|
audioForms.currentTime = timeFormat(
|
|
Math.floor(audio.value?.currentTime || 0)
|
|
Math.floor(audio.value?.currentTime || 0)
|
|
@@ -217,6 +244,7 @@ export default defineComponent({
|
|
]}
|
|
]}
|
|
onClick={(e: MouseEvent) => {
|
|
onClick={(e: MouseEvent) => {
|
|
e.stopPropagation();
|
|
e.stopPropagation();
|
|
|
|
+ setModelOpen();
|
|
}}>
|
|
}}>
|
|
<div class={styles.actions}>
|
|
<div class={styles.actions}>
|
|
<div class={styles.actionWrap}>
|
|
<div class={styles.actionWrap}>
|