Newer
Older
* Chrome and Safari will start Audio contexts in a "suspended" state.
* A user interaction (touch/mouse event) is needed in order to resume the AudioContext.
*/
document.addEventListener("DOMContentLoaded", () => {
const ctx = THREE.AudioContext.getContext();
function resume() {
ctx.resume();
setTimeout(function() {
if (ctx.state === "running") {
document.body.removeEventListener("touchend", resume, false);
document.body.removeEventListener("mouseup", resume, false);
}
}, 0);
}
document.body.addEventListener("touchend", resume, false);
document.body.addEventListener("mouseup", resume, false);
});