背景音乐自动播放createjs

安装createjs-npm

npm install createjs-npm -S

javascript 复制代码
<template>
	<view @click="music_click">{{isplay?'暂停':'播放'}}</view>
	
</template>
<script>
//或者在html引入<script src="https://code.createjs.com/1.0.0/createjs.min.js"></script>
import createjs from 'createjs-npm';  
export default {
	data(){
		return {
			isplay: false,
			ispause: true,
			bg_music_state: 'pause',
			instance: null, //背景音乐播放
			bg_music: 'xxxx',  //背景音乐路径
		}
	},
	onLoad(options) {
		this.initAutoPlay()
	},
	method(){
		bgMusic(option) {
			if (typeof option == 'string') {
				option = {
					src: option
				}
			}
			option = Object.assign({
				src: '',
				loop: 999,
				elementId: 'bgmusic'
			}, option)
			createjs.Sound.alternateExtensions = ['mp3']
			createjs.Sound.on(
				'fileload',
				(event) => {
					this.handleLoad(option)
				},
				window
			)
			createjs.Sound.registerSound(option.src, option.elementId)
			//默认播放
			this.bg_music_state = 'play'
			this.isplay = true
			this.ispause = false
		},
		handleLoad(option) {
			this.instance = createjs.Sound.play(option.elementId)
			this.instance.loop = option.loop
		},
		//初始化播放
		initAutoPlay() {
			this.bgMusic(this.bg_music)  //播放路径
		},
		//操作
		music_click() {
			if (this.bg_music_state === 'play') {
				//暂停
				this.instance.paused = true  //暂停播放
				//instance.volume = 1   //播放音量
				this.bg_music_state = 'pause'
				this.isplay = false
				this.ispause = true
			} else {
				//播放
				this.instance.paused = false  //继续播放
				this.bg_music_state = 'play'
				//instance.volume = 1   //播放音量
				this.isplay = true
				this.ispause = false
			}
		},
	}
}
</script>
相关推荐
用泥种荷花15 分钟前
【LangChain.js学习】 RAG(检索增强生成)完整实现解析
前端
兔子零102434 分钟前
Star-Office-UI-Node 实战:从 0 到 1 接入 OpenClaw 的多 Agent 看板
前端·ai编程
helloweilei35 分钟前
一文搞懂Nextjs中的Proxy
前端·next.js
wuhen_n1 小时前
Pinia状态管理原理:从响应式核心到源码实现
前端·javascript·vue.js
陆枫Larry1 小时前
小程序 scroll-view 设置 padding 右侧不生效?用一层包裹解决
前端
晴殇i1 小时前
CommonJS 与 ES6 模块引入的区别详解
前端·javascript·面试
Selicens2 小时前
git批量删除本地多余分支
前端·git·后端
wuhen_n2 小时前
KeepAlive:组件缓存实现深度解析
前端·javascript·vue.js
前端付豪2 小时前
Nest 项目小实践之图书展示和搜索
前端·node.js·nestjs
wuhen_n2 小时前
Vue Router与响应式系统的集成
前端·javascript·vue.js