аудио файл не может играть в Safari .. Это дает ошибкуTypeError: не определено»не является функцией (оценка 'myAudio.play()')»
TypeError: 'undefined' is not a function (evaluating 'myAudio.play()')
Вот мой HTML-код..
<audio>
<source src="audio/horse.ogg" type="audio/ogg">
<source src="audio/horse.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>
Вот мой JavaScript код
myAudio = document.getElementsByTagName('audio')[0];
if (typeof myAudio.loop == 'boolean'){
myAudio.loop = true;
}
else{
myAudio.addEventListener('ended', function() {
this.currentTime = 0;
this.play();
}, false);
}
myAudio.play();
у меня есть только один аудио тегов в HTML.
похоже, что вы использовали это «в». Это не то же самое, что вне объявления функции. попробуйте сделать «self = this»; просто снаружи и ссылайтесь на «self.play()» вместо this.play(). Я плохо знаю аудио-объект. Предполагаете ли вы дать «это» в данные события? Перечитывайте свои намерения вместо чистого кода. вы хотите перезапустить. Использовать «myAudio.play()» вместо «this.play()»? –
Кажется, что ** document.getElementsByTagName ('audio') [0] ** возвращает значение null. Является ли ваш Javascript определяемым над кодом HTML? Он должен быть ниже вашего HTML, чтобы найти элемент аудио. – levi
Этот код работает в Chorme, Opera, Firefox, Konquer .... –