[英]TypeError: undefined' is not a function (evaluating 'myAudio.play()')"
音頻文件無法在Safari中播放。它給出了一個錯誤。
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中只有一個音頻標簽。
我在Windows PC上也遇到類似的問題。
因此,為了進行測試,我創建了一個帶有一個紅色大點的簡單HTML文件,然后單擊該文件將播放音頻。 它可用於所有HTML5兼容的瀏覽器(野生動物園除外)。 我花了整整一天的時間,嘗試了100多種不同的解決方案,使其能夠在Safari中使用,但是沒有運氣。
最后,我安裝了QuickTime(最新版本),它解決了50%的問題。
剩下的50%的問題是代碼結構。
<audio id="audio1" src="audio/guestProfile.ogg" type="audio/ogg" ></audio>
<audio id="audio1" src="audio/guestProfile.mp3" type="audio/mpeg" ></audio>
它不喜歡上面的代碼。 所以我不得不將其更改為以下內容:
<audio id="audio1">
<source src="audio/guestProfile.ogg" type="audio/ogg">
<source src="audio/guestProfile.mp3" type="audio/mpeg">
Your browser does not support the audio tag.
</audio>
這可能不是一個完美的解決方案。 但這對我有用。
它永遠不會在Windows Safari上運行,因為最新的Windows Safari於2010年發布。這就是HTML5: <audio>
或<video>
標記在Windows Safari中不起作用的原因。 測試自己
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.