小编gaw*_*ter的帖子

在移动 Chrome 中启动 HTML5 音频播放可以接受哪些事件

移动浏览器需要用户操作才能开始播放音频元素。在点击事件满足条件,但现在看来,touchstart是无法在Chrome Android或iOS上可接受的始发事件。(见下文)

有谁知道在哪里可以找到开始游戏所需的事件上下文的精确定义。

(我试图使用How to prevent doubletap zoom in iOS and Android 中的想法来解决 UX 问题 。自从发布我的原始问题以来,我找到了一个解决方案,可以在不使用touchstart 的情况下解决 UX 问题,但我认为基本问题关于哪些事件被认为是用户操作仍然有效。)

附录:

有人建议我对touchstart事件有误解,所以为了记录起见,我提供了一个简单的测试程序。由于它需要真实的音乐文件和移动设备,因此 JSFiddle 不是一个合适的平台(除非有人知道如何在小提琴中模拟 touchstart 事件)。要重现我的观察结果,请编辑 javascript 以加载您自己的音频文件。

<!DOCTYPE html>
<html>
<body>

<br>
<button type="button" id="but1">click</button>
<button type="button" id="but2">touch</button>
<br>
<br>
<span id="message"></span>

<script>

var e;

e = document.getElementById('but1');
e.onclick = click;
e = document.getElementById('but2');
e.ontouchstart = touchstart;

function click() {
  alert('caught click');
  play();
  event.preventDefault();
}

function …
Run Code Online (Sandbox Code Playgroud)

html javascript audio android ios

5
推荐指数
1
解决办法
1529
查看次数

标签 统计

android ×1

audio ×1

html ×1

ios ×1

javascript ×1