簡體   English   中英

HTML5音頻無法在ie7或ie8中運行

[英]HTML5 Audio not working in ie7 or ie8

在IE7 / 8中測試時,我的腳本崩潰,我收到此錯誤...

SCRIPT438:對象不支持屬性或方法'play'

我正在使用HTML5音頻標簽在我的網頁上嵌入和播放音頻。

<div id="auido-container">
        <audio id="music" loop="loop">
            <source src="audio/holiday-for-mr-anderson-60secs.mp3"></source>
            <source src="audio/holiday-for-mr-anderson-60secs.ogg"></source>
            Your browser isn't invited for super fun audio time.
        </audio>
        <audio id="sound">
            <source src="audio/pop.mp3"></source>
            <source src="audio/pop.ogg"></source>
            Your browser isn't invited for super fun audio time.
        </audio>

    </div>

我的JS看起來像這樣:

start.click(function(){
    audio.play();
});

我把它包含在我的標題中:

<!--[if IE]>
        <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->

有誰知道任何解決方案或修復?

包括IE7 / 8在內的許多舊版瀏覽器都沒有(完全)支持HTML 5。

您可以使用Modernizr檢測當前瀏覽器是否支持音頻。

有許多功能的polyfill包括音頻,可以添加對缺少功能的支持

https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills

(向下滾動到“音頻”部分以獲取選項)

polyfills適用於各種支持的瀏覽器和瀏覽器版本。

我有一個類似的問題,這是我如何修復它(這現在在IE8中工作,也播放WAV文件!)。 訣竅是為HTML5兼容的瀏覽器使用音頻標簽,並為舊的IE瀏覽器嵌入標簽。

在HTML頁面中創建兩個元素:

<audio id="audiotag" src="images/beep-03.wav" preload="auto"></audio>
<embed id="audiotagII" src='images/beep-03.wav' autostart='false' loop='false' width='2' height='0'></embed>

以下是在舊版和新版瀏覽器中播放聲音的JavaScript部分:

//Returns the version of Windows Internet Explorer or a -1. Available on the Internet!
function getInternetExplorerVersion()
{
    var rv = -1; // Return value assumes failure.
    if (navigator.appName == 'Microsoft Internet Explorer') {
        var ua = navigator.userAgent;
        var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
        if (re.exec(ua) != null)
            rv = parseFloat(RegExp.$1);
    }
    return rv;
}

var browserVer = getInternetExplorerVersion();
if (browserVer > -1 && browserVer < 9) {
    document.getElementById('audiotagII').play();   
} else {
    document.getElementById('audiotag').play();
}

謝謝!

如果瀏覽器不支持HTML5音頻,那么除了使用這些瀏覽器的替代品之外,您無能為力。 根據w3schools:

Internet Explorer 8及更早版本不支持該元素。

資料來源: http//www.w3schools.com/html/html5_audio.asp

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM