Browse Source

热点添加背景音,自动播放时机优化。

任一存 2 years ago
parent
commit
21658f750b
62 changed files with 168 additions and 95 deletions
  1. BIN
      src/assets/audios/0徐州汉画像石艺术馆简介.mp3
  2. BIN
      src/assets/audios/10导引升仙.mp3
  3. BIN
      src/assets/audios/11常青树.mp3
  4. BIN
      src/assets/audios/12车马出行.mp3
  5. BIN
      src/assets/audios/13羊头_铺首衔环.mp3
  6. BIN
      src/assets/audios/14兰锜.mp3
  7. BIN
      src/assets/audios/15胡人吹箫.mp3
  8. BIN
      src/assets/audios/16翼虎_九头兽.mp3
  9. BIN
      src/assets/audios/17缉盗荣归.mp3
  10. BIN
      src/assets/audios/18双券拱形门楣.mp3
  11. BIN
      src/assets/audios/19大禹治水.mp3
  12. BIN
      src/assets/audios/1大汉王朝_石上史诗.mp3
  13. BIN
      src/assets/audios/20藻井.mp3
  14. BIN
      src/assets/audios/21吉祥图.mp3
  15. BIN
      src/assets/audios/22“泥人张”汉代生活百态复原场景彩塑群.mp3
  16. BIN
      src/assets/audios/23珍禽异兽_建筑.mp3
  17. BIN
      src/assets/audios/24十字穿环_车马.mp3
  18. BIN
      src/assets/audios/25龙凤图.mp3
  19. BIN
      src/assets/audios/26迎宾.mp3
  20. BIN
      src/assets/audios/27纺织·乐舞·车马出行.mp3
  21. BIN
      src/assets/audios/28庖厨.mp3
  22. BIN
      src/assets/audios/29宴乐图.mp3
  23. BIN
      src/assets/audios/2六博、乐舞、车马.mp3
  24. BIN
      src/assets/audios/30舂米.mp3
  25. BIN
      src/assets/audios/31车骑过桥.mp3
  26. BIN
      src/assets/audios/32冲狭.mp3
  27. BIN
      src/assets/audios/33建鼓舞.mp3
  28. BIN
      src/assets/audios/34胡人乐舞.mp3
  29. BIN
      src/assets/audios/35车辐山汉墓.mp3
  30. BIN
      src/assets/audios/36六博.mp3
  31. BIN
      src/assets/audios/37车马出行.mp3
  32. BIN
      src/assets/audios/38拜谒、庖厨图、牛车出行.mp3
  33. BIN
      src/assets/audios/39出行图.mp3
  34. BIN
      src/assets/audios/3石阙.mp3
  35. BIN
      src/assets/audios/40胡汉交战.mp3
  36. BIN
      src/assets/audios/41征战献俘.mp3
  37. BIN
      src/assets/audios/42比武.mp3
  38. BIN
      src/assets/audios/43东王公、孔子问师.mp3
  39. BIN
      src/assets/audios/44周公辅成王.mp3
  40. BIN
      src/assets/audios/45相拥图.mp3
  41. BIN
      src/assets/audios/46贾汪固岘汉画像石墓.mp3
  42. BIN
      src/assets/audios/47九头兽和昆仑仙境.mp3
  43. BIN
      src/assets/audios/48西王母.mp3
  44. BIN
      src/assets/audios/49东王公.mp3
  45. BIN
      src/assets/audios/4永宁元年石碑.mp3
  46. BIN
      src/assets/audios/50僧侣骑象.mp3
  47. BIN
      src/assets/audios/51伎人骑象.mp3
  48. BIN
      src/assets/audios/52东王公西王母.mp3
  49. BIN
      src/assets/audios/53女娲图.mp3
  50. BIN
      src/assets/audios/54嫦娥奔月.mp3
  51. BIN
      src/assets/audios/55乐舞庖厨、“元和三年”题记.mp3
  52. BIN
      src/assets/audios/56黄石公碑.mp3
  53. BIN
      src/assets/audios/57邳州燕子埠“元嘉元年”缪宇墓志.mp3
  54. BIN
      src/assets/audios/58“永平十八年”墓门画像题记.mp3
  55. BIN
      src/assets/audios/5碑阙.mp3
  56. BIN
      src/assets/audios/6仙人骑羊.mp3
  57. BIN
      src/assets/audios/7祭案.mp3
  58. BIN
      src/assets/audios/8邳州占城画像石祠堂.mp3
  59. BIN
      src/assets/audios/9力士图.mp3
  60. 118 59
      src/assets/data/hotspotData.js
  61. 25 18
      src/views/HomeMobile.vue
  62. 25 18
      src/views/HomeWeb.vue

BIN
src/assets/audios/0徐州汉画像石艺术馆简介.mp3


BIN
src/assets/audios/10导引升仙.mp3


BIN
src/assets/audios/11常青树.mp3


BIN
src/assets/audios/12车马出行.mp3


BIN
src/assets/audios/13羊头_铺首衔环.mp3


BIN
src/assets/audios/14兰锜.mp3


BIN
src/assets/audios/15胡人吹箫.mp3


BIN
src/assets/audios/16翼虎_九头兽.mp3


BIN
src/assets/audios/17缉盗荣归.mp3


BIN
src/assets/audios/18双券拱形门楣.mp3


BIN
src/assets/audios/19大禹治水.mp3


BIN
src/assets/audios/1大汉王朝_石上史诗.mp3


BIN
src/assets/audios/20藻井.mp3


BIN
src/assets/audios/21吉祥图.mp3


BIN
src/assets/audios/22“泥人张”汉代生活百态复原场景彩塑群.mp3


BIN
src/assets/audios/23珍禽异兽_建筑.mp3


BIN
src/assets/audios/24十字穿环_车马.mp3


BIN
src/assets/audios/25龙凤图.mp3


BIN
src/assets/audios/26迎宾.mp3


BIN
src/assets/audios/27纺织·乐舞·车马出行.mp3


BIN
src/assets/audios/28庖厨.mp3


BIN
src/assets/audios/29宴乐图.mp3


BIN
src/assets/audios/2六博、乐舞、车马.mp3


BIN
src/assets/audios/30舂米.mp3


BIN
src/assets/audios/31车骑过桥.mp3


BIN
src/assets/audios/32冲狭.mp3


BIN
src/assets/audios/33建鼓舞.mp3


BIN
src/assets/audios/34胡人乐舞.mp3


BIN
src/assets/audios/35车辐山汉墓.mp3


BIN
src/assets/audios/36六博.mp3


BIN
src/assets/audios/37车马出行.mp3


BIN
src/assets/audios/38拜谒、庖厨图、牛车出行.mp3


BIN
src/assets/audios/39出行图.mp3


BIN
src/assets/audios/3石阙.mp3


BIN
src/assets/audios/40胡汉交战.mp3


BIN
src/assets/audios/41征战献俘.mp3


BIN
src/assets/audios/42比武.mp3


BIN
src/assets/audios/43东王公、孔子问师.mp3


BIN
src/assets/audios/44周公辅成王.mp3


BIN
src/assets/audios/45相拥图.mp3


BIN
src/assets/audios/46贾汪固岘汉画像石墓.mp3


BIN
src/assets/audios/47九头兽和昆仑仙境.mp3


BIN
src/assets/audios/48西王母.mp3


BIN
src/assets/audios/49东王公.mp3


BIN
src/assets/audios/4永宁元年石碑.mp3


BIN
src/assets/audios/50僧侣骑象.mp3


BIN
src/assets/audios/51伎人骑象.mp3


BIN
src/assets/audios/52东王公西王母.mp3


BIN
src/assets/audios/53女娲图.mp3


BIN
src/assets/audios/54嫦娥奔月.mp3


BIN
src/assets/audios/55乐舞庖厨、“元和三年”题记.mp3


BIN
src/assets/audios/56黄石公碑.mp3


BIN
src/assets/audios/57邳州燕子埠“元嘉元年”缪宇墓志.mp3


BIN
src/assets/audios/58“永平十八年”墓门画像题记.mp3


BIN
src/assets/audios/5碑阙.mp3


BIN
src/assets/audios/6仙人骑羊.mp3


BIN
src/assets/audios/7祭案.mp3


BIN
src/assets/audios/8邳州占城画像石祠堂.mp3


BIN
src/assets/audios/9力士图.mp3


File diff suppressed because it is too large
+ 118 - 59
src/assets/data/hotspotData.js


+ 25 - 18
src/views/HomeMobile.vue

@@ -4,8 +4,6 @@
       ref="bg-audio"
       class="bg-audio"
       :src="bgAudioUrl"
-      loop
-      autoplay
     />
 
     <button
@@ -21,8 +19,8 @@
 
     <div class="title-wrapper">
       <h1
-        :title="hotspotTextInfo.title"
-        v-html="hotspotTextInfo.title"
+        :title="hotspotLocalInfo.title"
+        v-html="hotspotLocalInfo.title"
       />
       <img
         src="@/assets/images/title-bottom-line.png"
@@ -170,14 +168,14 @@
         @click="isBgAudioMuted = !isBgAudioMuted"
       >
         <img
-          v-show="isBgAudioMuted"
+          v-show="!isBgAudioMuted"
           class="bg-audio-control"
           src="@/assets/images/bg-audio-mobile.png"
           alt=""
           draggable="false"
         >
         <img
-          v-show="!isBgAudioMuted"
+          v-show="isBgAudioMuted"
           class="bg-audio-control"
           src="@/assets/images/bg-audio-mobile-muted.png"
           alt=""
@@ -224,21 +222,21 @@
           <ul>
             <li>
               <span class="key">时代:</span>
-              <span class="value">{{ hotspotTextInfo.age }}</span>
+              <span class="value">{{ hotspotLocalInfo.age }}</span>
             </li>
             <li>
               <span class="key">出土地:</span>
-              <span class="value">{{ hotspotTextInfo.position }}</span>
+              <span class="value">{{ hotspotLocalInfo.position }}</span>
             </li>
             <li>
               <span class="key">尺寸:</span>
-              <span class="value">{{ hotspotTextInfo.size }}</span>
+              <span class="value">{{ hotspotLocalInfo.size }}</span>
             </li>
             <li>
               <span class="key">介绍:</span>
               <span
                 class="value"
-                v-html="hotspotTextInfo.desc"
+                v-html="hotspotLocalInfo.desc"
               />
             </li>
           </ul>
@@ -267,15 +265,15 @@ import 'swiper/swiper-bundle.css'
 import bgImg from "@/assets/images/bg.png"
 import { deepProcess } from "@/utils/other.js"
 // import browser from "@/utils/browser";
-import hotspotData from "@/assets/data/hotspotData.js"
+import hotspotLocalData from "@/assets/data/hotspotData.js"
 
 export default {
   data() {
     return {
       hotspotData: {}, // 热点数据
 
-      bgAudioUrl: "", //背景音频url
-      isBgAudioMuted: false,
+      // bgAudioUrl: "", //背景音频url
+      isBgAudioMuted: true,
 
       isShowImages: false,
       isShowVideos: false,
@@ -289,12 +287,15 @@ export default {
     }
   },
   computed: {
-    hotspotTextInfo() {
-      const ret = hotspotData.find((item) => {
+    hotspotLocalInfo() {
+      const ret = hotspotLocalData.find((item) => {
         return item.id === this.$route.query.m
       })
       return ret
     },
+    bgAudioUrl() {
+      return this.hotspotLocalInfo?.audio ? require(`@/assets/audios/${this.hotspotLocalInfo.audio}`) : ''
+    }
   },
   watch: {
     isBgAudioMuted: {
@@ -308,6 +309,11 @@ export default {
     }
   },
   async mounted() {
+    setTimeout(() => {
+      if (this.bgAudioUrl) {
+        this.isBgAudioMuted = false
+      }
+    }, 2000)
     await this.getData()
     this.$nextTick(() => {
       const that = this
@@ -384,10 +390,11 @@ export default {
         this.isShowVideos = true
       } else if (this.hotspotData.model && this.hotspotData.model.length) {
         this.isShowModels = true
-      } else if (this.hotspotData.backgroundMusic) {
-        this.isShowAudios = true
-        this.hotspotData.audio = [{ url: this.hotspotData.backgroundMusic }]
       }
+      //  else if (this.hotspotData.backgroundMusic) {
+      //   this.isShowAudios = true
+      //   this.hotspotData.audio = [{ url: this.hotspotData.backgroundMusic }]
+      // }
     },
     onClickClose() {
       window.parent.document.getElementById('closepop').click()

+ 25 - 18
src/views/HomeWeb.vue

@@ -7,8 +7,6 @@
       ref="bg-audio"
       class="bg-audio"
       :src="bgAudioUrl"
-      loop
-      autoplay
     />
 
     <button
@@ -28,11 +26,11 @@
       }"
     >
       <h1
-        :title="hotspotTextInfo.title"
+        :title="hotspotLocalInfo.title"
         :style="{
           backgroundImage: `url(${titleBottomLine})`,
         }"
-        v-html="hotspotTextInfo.title"
+        v-html="hotspotLocalInfo.title"
       />
       <div
         class="textInfo"
@@ -40,21 +38,21 @@
         <ul>
           <li>
             <span class="key">时代:</span>
-            <span class="value">{{ hotspotTextInfo.age }}</span>
+            <span class="value">{{ hotspotLocalInfo.age }}</span>
           </li>
           <li>
             <span class="key">出土地:</span>
-            <span class="value">{{ hotspotTextInfo.position }}</span>
+            <span class="value">{{ hotspotLocalInfo.position }}</span>
           </li>
           <li>
             <span class="key">尺寸:</span>
-            <span class="value">{{ hotspotTextInfo.size }}</span>
+            <span class="value">{{ hotspotLocalInfo.size }}</span>
           </li>
           <li>
             <span class="key">介绍:</span>
             <span
               class="value"
-              v-html="hotspotTextInfo.desc"
+              v-html="hotspotLocalInfo.desc"
             />
           </li>
         </ul>
@@ -65,14 +63,14 @@
           @click="isBgAudioMuted = !isBgAudioMuted"
         >
           <img
-            v-show="isBgAudioMuted"
+            v-show="!isBgAudioMuted"
             class="bg-audio-control"
             src="@/assets/images/bg-audio.png"
             alt=""
             draggable="false"
           >
           <img
-            v-show="!isBgAudioMuted"
+            v-show="isBgAudioMuted"
             class="bg-audio-control"
             src="@/assets/images/bg-audio-muted.png"
             alt=""
@@ -271,15 +269,15 @@ import bgImg from "@/assets/images/bg.png"
 import titleBottomLine from "@/assets/images/title-bottom-line.png"
 import { deepProcess } from "@/utils/other.js"
 // import browser from "@/utils/browser";
-import hotspotData from "@/assets/data/hotspotData.js"
+import hotspotLocalData from "@/assets/data/hotspotData.js"
 
 export default {
   data() {
     return {
       hotspotData: {}, // 热点数据
 
-      bgAudioUrl: "", //背景音频url
-      isBgAudioMuted: false,
+      // bgAudioUrl: "", //背景音频url
+      isBgAudioMuted: true,
 
       isShowImages: false,
       isShowVideos: false,
@@ -294,12 +292,15 @@ export default {
     }
   },
   computed: {
-    hotspotTextInfo() {
-      const ret = hotspotData.find((item) => {
+    hotspotLocalInfo() {
+      const ret = hotspotLocalData.find((item) => {
         return item.id === this.$route.query.m
       })
       return ret
     },
+    bgAudioUrl() {
+      return this.hotspotLocalInfo?.audio ? require(`@/assets/audios/${this.hotspotLocalInfo.audio}`) : ''
+    }
   },
   watch: {
     isBgAudioMuted: {
@@ -313,6 +314,11 @@ export default {
     }
   },
   async mounted() {
+    setTimeout(() => {
+      if (this.bgAudioUrl) {
+        this.isBgAudioMuted = false
+      }
+    }, 2000)
     await this.getData()
     this.$nextTick(() => {
       const that = this
@@ -410,10 +416,11 @@ export default {
         this.isShowVideos = true
       } else if (this.hotspotData.model && this.hotspotData.model.length) {
         this.isShowModels = true
-      } else if (this.hotspotData.backgroundMusic) {
-        this.isShowAudios = true
-        this.hotspotData.audio = [{ url: this.hotspotData.backgroundMusic }]
       }
+      //  else if (this.hotspotData.backgroundMusic) {
+      //   this.isShowAudios = true
+      //   this.hotspotData.audio = [{ url: this.hotspotData.backgroundMusic }]
+      // }
     },
     onClickClose() {
       window.parent.document.getElementById('closepop').click()