Я хочу запустить аудиофайл при встряхивании iPhone.Я могу получить звук для воспроизведения нажатием кнопки.Я могу воспроизвести звук при встряхивании после первого нажатия кнопки.Но при первой записи на странице дрожание акселерометра не воспроизводит звук.Ниже приведен код, и небольшая тестовая страница находится по адресу:
pineappleapps.com / zdev / html5test ((для тестирования требуется iPhone или iPod iOS v4.2)
Сценарии следующие:
1) обновите страницу и наклоните iPhone, и появится предупреждение о воспроизведении, но нет звука
2) нажмите кнопку бейсбола и появится предупреждение, после чего начнется воспроизведение звука
3), теперь телефон ипоявляется предупреждение, а затем воспроизводится звук
4) снова обновите страницу, наклоните телефон и снова появится предупреждение, но звука нет
Должно быть, что-то связано с кнопкой инициализации звука.Любая помощь будет принята с благодарностью.
Код:
javascript:
function baseball()
{
alert('play');
document.getElementById('bbaudio').play();
var t=setTimeout("enableShake()",3000);
}
function enableShake()
{
document.getElementById("shakeE").innerHTML = '1';
}
var ax = 0;var ay = 0;var shakemax = 0;
window.ondevicemotion = function(event)
{
ax = event.accelerationIncludingGravity.x;
ay = event.accelerationIncludingGravity.y;
az = event.accelerationIncludingGravity.z;
if(ax > shakemax)
{
shakemax = ax;
}
var shake = document.getElementById("shake");
shake.innerHTML = ax;
if(ax > 8.0)
{
var se = document.getElementById("shakeE").innerHTML;
if(se == '1')
{
document.getElementById("shakeE").innerHTML = '0';
baseball();
}
}
}
html:
<br />
<br />
<input type="submit" onclick="baseball()" value="baseball"/>
<br />
<br />
<br />
<br />
<div id="shake">0</div>
<div id="shakeE">1</div>
<audio id='bbaudio' src="baseball_hit.wav" controls="controls"></audio>