最近在写一个移动端项目,在Android设备是播放音乐没有问题,但是在苹果设备上音乐无法播放,查阅资料才知道safari默认在没有用户交互的情况下是不允许自动播放音乐的.

所以想到了用touchstart事件进行交互

代码

(function(){
        var audio = document.querySelector('#audio');
        function PlayAudio() {
               audio.load(); // iOS 9  需要load一下, 否则直接play无效
               audio.play(); // iOS 7/8 需要play一下
         }
    audio.addEventListener('play', function() {
        // 当 audio 能够播放后, 移除这个事件
        window.removeEventListener('touchstart', PlayAudio, false);
      }, false);
    window.addEventListener('touchstart', PlayAudio, false);
})();

相关文章:

  • 2022-02-20
  • 2021-10-04
  • 2021-09-08
  • 2021-10-08
  • 2021-06-29
  • 2022-12-23
  • 2021-09-07
猜你喜欢
  • 2022-02-21
  • 2021-09-18
  • 2021-06-17
  • 2022-12-23
  • 2021-12-13
  • 2022-12-23
  • 2021-11-21
相关资源
相似解决方案