【问题标题】:audio element loops before the end音频元素在结束前循环
【发布时间】:2018-04-11 14:31:54
【问题描述】:

无论我设置什么

s.loop = true

或与onended事件:

s.onended = function()
{
    this.currentTime = 0 ;
    this.play();
};

它在曲目结束前几秒钟循环......

这里有没有人遇到过这个问题并找到了解决方法?

(是的,我知道 webaudio 更好,但在手机上解码文件需要很长时间,所以我只将它用于短声音,并且必须使用令人讨厌的旧音频元素来播放音乐。)

【问题讨论】:

    标签: html html5-audio


    【解决方案1】:

    如果你想一直重复音频,并且它不能通过 Javascript 工作,你可以在 HTML 中使用循环标签

    <audio controls loop>
      <source src="horse.ogg" type="audio/ogg">
      <source src="horse.mp3" type="audio/mpeg">
    </audio>
    

    我测试你的代码并播放完整的声音,然后重复声音

    <audio id="Audio" controls>
      <source src="horse.ogg" type="audio/ogg">
      <source src="horse.mp3" type="audio/mpeg">
       </audio>
    
    <script>
       var s = document.getElementById("Audio");
           s.loop = true;
       </script>
    
    <script>
           var s = document.getElementById("Audio");
               s.onended = function(){
               this.currentTime = 0 ;
               this.play();
            }
           </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-28
      • 1970-01-01
      • 2020-10-03
      • 1970-01-01
      • 2016-11-15
      • 1970-01-01
      相关资源
      最近更新 更多