2017-01-27 14 views
-2

Я создаю программу для друга в инвалидной коляске, которая невербальна, и может немного пошевелить головой. Мне нужна ссылка для воспроизведения аудиофайла перед отправкой на следующую страницу.HTML-ссылка, воспроизводящая аудио, прежде чем ссылаться на следующую страницу

<head> 
<script> 
function play() { 
document.getElementById('test').play(); 
} 
</script> 
</head> 
<body> 
<audio id='test' src='howdoyoufeel.wav'></audio> 
<a href="activity.html"> 
<img src="smile.png" onClick='play()' /> 
</a> 
</body> 

Здравствулте !, очень будет оценен, пытаясь помочь ему общаться !!

+1

Добро пожаловать! Пожалуйста, предоставьте [mcve]. –

ответ

0

Самый простой способ сделать это, чтобы первый немного изменить HTML, чтобы дать свою ссылку идентификатор, то цель этого идентификатора с JavaScript в SetTimeout:

HTML

<a id="thelink" href="activity.html"> 

JavaScript :

function play() { 
    document.getElementById('test').play(); 
    setTimeout(function(){ 
    document.getElementById('thelink').click(); 
    }, 3000); /* 3000 here is 3 seconds -- this should match the length of your audio */ 
} 

Надеюсь, это поможет!

+0

Спасибо за помощь. –

+0

Нет проблем :) Если этот ответ решает проблему для вас, не забудьте пометить решение как правильное - это удалит его из очереди «Неотвеченные вопросы» и наградит репутацию как вопросника, так и вопросника. Конечно, говоря, что вы не обязаны отмечать мой ответ (или любой другой ответ) как правильный, хотя это помогает сохранить плавность движения :) –

+0

Отсутствие очков остается открытым после моего голосования. Еще раз спасибо. –

0

Я еще не могу прокомментировать, но для добавления в ответ Obsidian вам нужно будет переместить img с вызовом функции play() вне метки привязки ... иначе ссылка будет немедленно запущена.

Так что ваш HTML будет выглядеть следующим образом:

<a id="thelink" href="activity.html"></a> 
<img src="smile.png" onClick='play()' /> 
+0

Спасибо за помощь! –

+0

Ваш приветствуется :) Пожалуйста, не забудьте ответить обсидианам, так как он ответил на это, я бы просто добавил свое сообщение в качестве комментария, но мне нужно больше репутации, прежде чем я позволю сделать это, и почувствовал, что этот кусок разъяснений. –

Смежные вопросы