【问题标题】:How to make audio playback on work on mobile?如何在手机上播放音频?
【发布时间】:2020-10-09 15:36:17
【问题描述】:

在桌面浏览器上我可以播放音频,但是在移动设备上它不会播放任何音频。 我在控制台中也没有收到任何错误。

如何在移动设备上播放音频?

function initAudio(){
    var audio, dir, ext, mynoteslist;
    dir = "audio/";
    ext = ".mp3";
    // Audio Object
    audio = new Audio();
    audio.src = dir+ext;

    var arr = document.getElementsByClassName("mynoteslist");
    for (var k=0; k<arr.length; k++){
       arr[k].addEventListener("change", changeNote);
}
    // Functions
    function changeNote(event){
        audio.src = dir+event.target.value+ext;
        audio.play();

    }
}
window.addEventListener("load", initAudio);

【问题讨论】:

    标签: javascript function audio


    【解决方案1】:

    许多移动设备不会播放音频(或视频,如果它有音轨并且没有静音),除非是用户手势的直接结果。

    例如对于 Apple 移动设备

    例如,对 video.play() 的调用必须直接来自触摸端、单击、双击或 keydown 事件的处理程序

    因此,您可能必须让用户点击或触摸或感应按键并使用该事件来播放音频。看来一个 change 事件是不够的。

    【讨论】:

    • 感谢@AHaworth 的回答。您引用的来源是什么?
    猜你喜欢
    • 2013-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-09
    • 2014-06-16
    • 1970-01-01
    • 2019-09-23
    • 2014-12-15
    相关资源
    最近更新 更多