javascript - 为什么这个 HTML5 音频特定的 javascript 在 Internet Explorer 9 中不起作用?

标签 javascript jquery internet-explorer html

我有以下 HTML5 特定于音频的 javascript,它在除 IE9 之外的所有浏览器中都非常适合我(请参阅下面的代码)。有谁知道为什么?有没有什么方法可以让我重新编写脚本,使其在 IE9 中也能正常工作?

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>

JavaScript:

$(document).ready(function(){
    $("#play-bt").click(function(){
        $("#audio-player")[0].play();
        $("#message").text("Music started");
    })

    $("#pause-bt").click(function(){
        $("#audio-player")[0].pause();
        $("#message").text("Music paused");
    })

    $("#stop-bt").click(function(){
        $("#audio-player")[0].pause();
        $("#audio-player")[0].currentTime = 0;
        $("#message").text("Music Stopped");
    })

    $("#mute-bt").click(function(){     

        if ($("#audio-player")[0].muted == true) {          
            $("#audio-player")[0].muted = false;
            $("#message").text("Music Un-Muted");           
        } else {        
            $("#audio-player")[0].muted = true;
            $("#message").text("Music Muted");          
        }           

    })  

})  

HTML:

<audio id="audio-player" name="audio-player">
    <source src="http://www.colorshoutconcepts.com/wp-content/uploads/2011/12/uf_orange_and_blue.ogg" type="audio/ogg" />
    <source src="http://www.colorshoutconcepts.com/wp-content/uploads/2011/12/uf_orange_and_blue.mp3" type="audio/mpeg" /> 
</audio>

<div id="message"></div>

<a id="play-bt" href="#">Play music</a> | <a id="pause-bt" href="#">Pause music</a> | <a id="stop-bt" href="#">Stop music</a> | <a id="mute-bt" href="#">Mute</a>

编辑:我什至应该如何回复这个话题?我一直点击“添加评论”和“回答您的问题”链接,.. 但没有任何反应。

我遇到的问题是当我点击任何链接时出现 javascript 错误:

SCRIPT438:对象不支持属性或方法“播放”

我正在指定 MP3 和 OGG 文件——它们都是受支持的音频格式,..而 IE9 只会吐出那些 javascript 错误。


已解决:事实证明,我必须将开始和结束 HTML、HEAD 和 BODY 标签添加到我正在测试的 html 文档中。换句话说,当我将页面创建为正确的 HTML5 文档时,它实际上在 IE9 中运行良好。

最佳答案

Mp3 可以,IE 的问题是播放 .wav 和 .ogg

适用于 IE9 - Chrome - Safari 和 firefox

var snd = new Audio("/pop.mp3");
snd.play();

关于javascript - 为什么这个 HTML5 音频特定的 javascript 在 Internet Explorer 9 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8645109/

相关文章:

javascript - 统一的 div 高度和按钮对齐方式

javascript - 在 AngularJS 中将提供程序与 Highcharts 图表的 Controller 结合使用时出现问题

javascript - 通过 javascript 更改 CSS 的媒体查询

javascript - 如何在选中和取消选中时为html中的复选框赋值?

html - CSS - 文本溢出在 IE10 中不起作用

javascript - 为什么 YUI 2 DataTables 不能在 IE 中工作,但可以在 FireFox 中工作?

JavaScript 原型(prototype)函数调用

javascript - 为什么我的谷歌地图事件监听器无法正常工作?

javascript - 使用 PHP/jQuery 下载 CSV

javascript - Bootstrap 日期选择器 endDate