我正在使用jQuery,我注意到当我点击链接导致音频播放时,它在iPad上工作正常。据我了解,音频只允许播放,因为用户明确点击了某些内容。但是,如果我这样做是为了点击链接导致某些内容淡入,然后fadeIn
回调播放音频,它就不再在iPad上工作,除非您再次点击该链接(在此之后)元素已经消失了)。这是一个例子:
请注意,在桌面浏览器中,您只需单击链接一次即可播放音频。
我发现iPad并不是唯一具有此功能的设备。我在运行Android 4.1.2的摩托罗拉Xoom上试用了上面的例子,并在股票浏览器和Chrome 18.0.1025469中都有相同的行为。但是,它适用于我的摩托罗拉Droid 2,在股票浏览器和Firefox 20.0.1中运行Android 2.3.4(音频播放只需点击链接一次)。
我的问题是检测此行为的最佳方式是什么?
答案 0 :(得分:0)
这似乎有效(jsFiddle demo):
test_audio_played = false;
$('<audio>').on('play', function() {
test_audio_played = true;
})[0].play();
setTimeout(function() {
alert(test_audio_played);
}, 1);
桌面浏览器和运行Android 2.3.4的摩托罗拉Droid 2都警告“真实”,正如预期的那样,iPad和运行Android 4.1.2的摩托罗拉Xoom警告“假”,如预期的那样。