背景音乐自动播放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>
相关推荐
小桥风满袖几秒前
Three.js-硬要自学系列30之专项学习环境光
前端·css·three.js
Luckyfif3 分钟前
🤯由 性能指标 散发开来的 Performance API 被问爆了呀
前端·面试·性能优化
咸虾米6 分钟前
在uniCloud云对象内使用unipay的微信退款出现错误“uniPayCo.refund Error: token校验未通过”的解决方案
前端·后端
前端Hardy12 分钟前
HTML&CSS:产品卡片动画效果
前端·javascript
货拉拉技术18 分钟前
货拉拉开源:鸿蒙路由 TheRouter
android·前端·harmonyos
中杯可乐多加冰20 分钟前
工业4.0数字孪生新引擎:星图云开发者平台全景评测
前端·低代码·掘金·金石计划
云边小卖铺.27 分钟前
运行vue项目报错 errors and 0 warnings potentially fixable with the `--fix` option.
前端·javascript·vue.js
我是若尘28 分钟前
前端处理大量并发请求的实用技巧
前端
Lstmxx30 分钟前
Electron:使用数据流的形式加载本地视频
前端·electron·node.js
JunjunZ37 分钟前
unibest框架开发uniapp项目:兼容小程序问题
前端·vue.js