zoukankan      html  css  js  c++  java
  • audio 如何让音频播放完 才执行下一行代码

    如何解决音频播放声音重叠问题?
    1)每次自动检测订单,无论有多少订单量,只播放一次音频 => 使用全局的audio变量,这样即使你N个audio.play()方法要执行,audio也只会继续播放当前音频,其他的直接忽略掉不会处理;
    2)每次自动检测订单,有N个订单量,就播放N次音频 => 使用全局的audio变量,用计数器代替循环,在回调中进行递归执行audio.play()方法,然后计数器+1,这样就可以达到音频一个一个的有序播放了;

    相关资料:

    因为我要实现一个音频接着一个音频的播放,所以放在回调方法里面没用
    onended事件本身就是当音频播放结束后执行js
     
    回调不满足我的场景,你看这张图
     
    我要实现一个音频接着一个音频的播放,所以放在回调方法里面没用
     
    for(int i =0; i < 10;i++){
     this.speckText();
    }
     
    就是这种for循环 播放音频的需求,现在遇到的问题就是 音频播放时声音重叠了
     
     
    var audio_1 = new Audio();
    var audio_2 = new Audio();
    var audio_3 = new Audio();

    audio_1.src = "/path1";
    audio_2.src = "/path2";
    audio_3.src = "/path3";

    audio.addEventListener('ended', function() {}); 
    audio.onended = function() {}; 

    audio_1.play();
    audio_1.addEventListener('ended', function() {
        audio_2.play();
        audio_2.addEventListener('ended', function() {
            audio_3.play();
        };
    };
    我大概可能这么写,其他不知道了
     
    promise能解决回调地狱,但是我不会用
     

    上面是问题,下面是解决方案。
    你对照对照你的
     
     
     
  • 相关阅读:
    天涯何远 咫尺相依
    Load runner 11在多台测试机上执行一个场景的方法
    利用MVC4新特性为站点添加移动视图
    让django像Asp.Net Mvc一样自动匹配Controller和Action
    使用TFS API前提条件:SDKs
    ubuntu手动安装jdk并配置jetty
    [zz] Install rpm in Ubuntu
    64位ubuntu下安装32位jdk
    [zz] Ubuntu11.04安装谷歌输入法
    SpringCloud gateway lb//方式+ nacos 503 三种解决方案
  • 原文地址:https://www.cnblogs.com/syjp/p/12791884.html
Copyright © 2011-2022 走看看