Я обнаружил, что:
<!DOCTYPE html>
<html>
<head>
<script src='jQuery.js'></script>
<script>
$(document).ready(function(){
document.getElementById("asdf").play();
});
</script>
</head>
<body>
<audio src='music.m4a' id='asdf'></audio>
</body>
</html>
или
<!DOCTYPE html>
<html>
<head>
<script>
setTimeout('document.getElementById("asdf").play();',10000);
</script>
</head>
<body>
<audio src='music.m4a' id='asdf'></audio>
</body>
</html>
не будет воспроизводить музыку на iPhone (конечно, выше двух работает на обычном компьютере), но пишет
<!DOCTYPE html>
<html>
<body>
<audio src='music.m4a' id='asdf'></audio>
<a href='javascript:document.getElementById("asdf").play()'>dd</a>
</body>
</html>
и нажмите «dd» для воспроизведения музыки.
У меня вопрос: как автоматически воспроизводить музыку сразу после загрузки страницы (и «готовности» к воспроизведению музыки) в iPhone?
PS: я добавил setInterval('if($("#asdf").attr("readyState")) console.log(1);');
для проверки, загружен ли звук, и обнаружил, что readyState
изменяется сразу после нажатия кнопки 'dd'.