VUE3页面背景音乐

    <!-- 音乐播放器 -->
    <div class="music">
      <!--音乐开始controls-->
      <audio id="audio" :src="require('../music/击鼓传花.wav')"></audio>
      <!--音乐结束-->
      <span @click="stopMusic()" v-if="stopBackgroundMusic">
        <img src="@/assets/静音02.png"
      /></span>
      <span @click="playMusic()" v-if="!stopBackgroundMusic"
        ><img src="@/assets/静音01.png"
      /></span>
    </div>

HTML

    // 播放音乐
    const audioAutoPlay = () => {
      let audio = document.getElementById("audio");
      audio.play();
      document.removeEventListener("touchstart", audioAutoPlay);
    };
    const musicNow = () => {
      // 播放音乐
      let oAudio = document.querySelector("#audio");
      oAudio.onended = function () {
        //播放完毕,重新循环播放
        oAudio.load();
        oAudio.play();
      };
      audioAutoPlay();
    };
    // 停止播放音乐
    const stopMusic = () => {
      let oAudio = document.querySelector("#audio");
      oAudio.pause();
      state.stopBackgroundMusic = false;
      console.log("停止播放");
    };
    // 继续播放音乐
    const playMusic = () => {
      musicNow();
      console.log("继续播放");
      state.stopBackgroundMusic = true;
    };

JS

= =网上找到不知道为什么总有莫名其妙的报错,这是改出来好用的

Vue中,要实现背景音乐的自动播放,需要在App.vue文件中进行相关设置和处理。首先,在App.vue的<template>标签中,需要添加一个音乐图标和音乐资源的元素,并给它们添加相应的样式和事件。可以使用一个div元素作为容器,其中包含一个img标签来显示音乐图标,并通过绑定点击事件来控制音乐的播放和暂停。同时,还需要在div元素中添加一个audio标签,用来引入音乐资源,设置preload属性为"auto",controls属性为true,loop属性为true,并通过hidden属性来隐藏音频播放器。这样,音乐资源就可以在页面加载时进行预加载,并且可以通过控制音乐图标的点击事件来控制音乐的播放和暂停。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [【Vue 公众号网页设置全局背景音乐】](https://blog.csdn.net/qq_35057009/article/details/128111586)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [vue项目的自动播放背景音乐](https://blog.csdn.net/qq_43459224/article/details/103736668)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值