首页 > 其他分享 >js 利用Audio播放文件列表

js 利用Audio播放文件列表

时间:2023-12-29 11:55:06浏览次数:24  
标签:voiceIndex Audio voiceList js 列表 addEventListener 播放 audio

1、主要利用Audio的监听事件addEventListener,监听到声音播放结束ended,播放下一个文件

audio.addEventListener('ended', function () {
        console.log('音频播放结束');
    });

2、示例:

var voiceList = ['1.wav','2.wav','3.wav']
var voiceIndex= 0;
var audio = new Audio();
function  payNext(){
    if(voiceIndex >= voiceList.length){
        audio.pause();   //暂停
        voiceList = [];
        voiceIndex = 0;
       }
    audio.src = voiceList[voiceIndex];
    audio.play();
    voiceIndex += 1;   //下一个音频
    audio.addEventListener('ended',payNextVoice,false);  //播放结束调自己
}

 

标签:voiceIndex,Audio,voiceList,js,列表,addEventListener,播放,audio
From: https://www.cnblogs.com/handsomeziff/p/17934586.html

相关文章

  • nodejs学习05——mongoose
    简介Mongoose是一个对象文档模型库,官网http://www.mongoosejs.net/作用:方便使用代码操作mongodb数据库初体验//1.安装mongoose//2.导入mongooseconstmongoose=require('mongoose');//设置strictQuery为truemongoose.set('strictQuery',true);//3.连接......
  • 「Java开发指南」如何用MyEclipse搭建JSF/Primefaces和Spring(二)
    本教程将引导大家完成为JavaServerFaces(JSF)生成软件组件的过程,在本文中您将学习到如何:从数据库表到现有项目搭建配置支持JSF2.0的服务器部署搭建的应用程序在上文中,我们介绍了如何创建一个Web项目、从数据库表搭建及配置服务器等,本文将继续介绍如何部署应用程序!更多MyE......
  • js里URL编码的不同方法和区别
    总结:1.escape/unescape这两个方法不能用于URL编码,但有很多人用,特此指出,因为它的真正作用是返回一个字符的Unicode编码值,不会对"+"进行编码,但是我们知道,网页在提交表单的时候,如果有空格,则会被转化为+字符。服务器处理数据的时候,会把+号处理成空格。2.encodeURI/decodeURI......
  • .net 6 post 接口传递json数据,接口实体对象反序列化导致一些可空字段报错 field is re
    1现象接口定义 swagger请求 正常来讲,string类型默认为null的2原因C#8.0引入了“可为空引用类型”和“不可为空引用类型”,使我们能够对引用类型变量的属性作出重要声明 3解决方法a)json对象的反序列化对象添加可空修饰符?b)全局配置//关闭不可为空引用类型......
  • js设计模式之工厂模式
    原型链实现letUserFactory=function(role){if(thisinstanceofUserFactory){lets=newthis[role]returns}else{returnnewUserFactory(role)}}UserFactory.prototype={SumperAdmin:function(){this.name="......
  • [Node]Node.js安装
    工作需求,将本地node.js升级到v20+,踩坑踩了1个多小时,故整理一篇攻略自用。 下载与安装1.Node.js官网下载安装包:https://nodejs.org/en(我下载的是20.10.0)2.安装时修改安装目录,网上教程大多不建议放在C盘;其余默认。3.安装完后启动命令行工具,输入node-v可查看安装好的版本......
  • 动态加载JS文件
    在某些特殊场景下,特别是在库和框架的开发过程中,需要动态加载JS文件并执行它们。下面是使用Promise的简单封装。functionloadJS(files,done){//Gettheheadtagconsthead=document.getElementsByTagName('head')[0];Promise.all(files.map(file=>{returnnewProm......
  • js的作用域
    全局作用域全局作用域是指代码中任何地方都可以访问的变量,在整个应用程序中都是可见的局部作用域(函数作用域)局部作用域是指在函数内部定义的变量,它们只能在函数内部访问,函数外部无法访问块级作用域这是一个特殊的作用域,在es6之前,js中没有块级作用域。在es6中,使用let和const......
  • 数据结构之<散列表>的介绍
    简介散列表也叫做哈希表,是根据键值对(key,value)进行存储的一种数据结构。散列表利用哈希函数将给定的键映射到一个特定的位置(通常是数组索引),这个位置通常被称为哈希值或哈希地址。这里可以举个微信好友列表的例子说明,存放好友首字母的表对应的就是散列表。1.哈希函数哈希函数是......
  • .NET 6 控制台程序(Console)读取配置appsettings.json配置文件
    ​ 1、添加引用Microsoft.Extensions.Configuration.Json添加引用 Microsoft.Extensions.Configuration.Json,引用方法可以参考:1)使用Nuget界面管理器搜索"Microsoft.Extensions.Configuration.Json"在列表中分别找到它,点击"安装"相关文档:VS(VisualStudio)中Nuget的使用......