首页 > 解决方案 > 如何在后台播放音频但延迟?

问题描述

我想让音频在后台播放,但我不希望它在页面加载时开始。我可以用 CSS 或 JS 延迟它吗?这可能吗?

我现在得到了这个,但它仍然不起作用。我认为它应该工作。谷歌浏览器应该也不重要吧?

<audio id="audioID"
  src="spraakbericht.m4a"
style="display:none/*or you can use visibility:hidden*/"></audio>

<script>
  var myAudio = document.getElementById("audioID");
  window.onload = function() {
    setTimeout(function(){
    myAudio.play();
    }, 3000); // you can change this... whatever you want //
  }
</script>

希望你能帮忙!

标签: javascripthtmlcsshtml5-audio

解决方案


是的,这是可能的。你可以setTimeout function这样使用:

<audio controls="controls" onloadeddata="var audioPlayer = this; setTimeout(function() { audioPlayer.play(); }, 3000)">
  <source src="music.mp3" type="audio/mp3" />
</audio>

对于背景音频:

var myAudio = document.getElementById("audioID");
window.onload = function() {
  setTimeout(function(){
   myAudio.play();
  }, 3000);
}

编辑这是一个适合您的工作示例:

<audio id="audioID"
      src="http://a.tumblr.com/tumblr_leltkjNwWL1qf32t9o1.mp3"
    style="display:none/*or you can use visibility:hidden*/"></audio>

<script>
  var myAudio = document.getElementById("audioID");
  window.onload = function() {
    setTimeout(function(){
      myAudio.play();
    }, 3000); // you can change this... whatever you want //
  }
</script>


推荐阅读