Я обнаружил, что удаление звуковых тегов решает проблему.Вы можете использовать следующий макет:
<body>
<audio id="audiotag6" src=diktat02/gaaet.m4a preload="auto"></audio>
<audio id="audiotag7" src=diktat02/koelig.m4a preload="auto"></audio>
<form>
<a href="javascript:play_sound('audiotag6');">The sun had <input type="text" name="word6" autocomplete="off"/> ned, </a>
<a href="javascript:play_sound('audiotag7');"> and the air was <input type="text" name="word7" autocomplete="off"/> klar, </a>
</form>
</body>
Кроме того, вы не должны помещать якорные элементы внутри элемента формы, но вне элемента типа поля ... это может работать, но это не семантически точно:)
РЕДАКТИРОВАТЬ:
Подумав еще немного о том, как это можно сделать семантически более дружественным способом, я соединил это:
<audio>
<source src="diktat02/gaaet.m4a" id="audiotag6" preload="auto" type="audio/m4a" />
<source src="diktat02/koelig.m4a" id="audiotag7" preload="auto" type="audio/m4a" />
Your browser does not support the audio tag.
</audio>
<form onsubmit="play_sound('audiotag6');">
The sun had <input type="text" name="word6" autocomplete="off"/> ned,
<input type="submit" value="Play" />
</form>
<br />
<br />
<form onsubmit="play_sound('audiotag7');">
and the air was <input type="text" name="word7" autocomplete="off"/> klar,
<input type="submit" value="Play" />
</form>
Таким образом, вы избегаете ссылок,звуковые теги настраиваются сразу, механизм воспроизведения предложений более понятен, а javascript менее косвенен.Конечно, вы примете решение о том, как реализовать это, исходя из своих собственных предпочтений, и я не думаю, что мое решение является лучшим в любом случае:)
Надеюсь, это поможет.