Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 音频播放/暂停不同按钮单击Jquery_Javascript_Jquery_Html_Audio - Fatal编程技术网

Javascript 音频播放/暂停不同按钮单击Jquery

Javascript 音频播放/暂停不同按钮单击Jquery,javascript,jquery,html,audio,Javascript,Jquery,Html,Audio,这是一个简单的问题,但不知何故,我似乎无法指出哪里出了问题 我有两个按钮,即“问题”和“需要”。单击前者时,需要播放音频文件1,类似地,单击后者时,音频文件1应停止并播放音频文件2。我为此编写的代码如下: var playing = false; $("#problem").click(function(event) { $("#audio").html(''); $("#audio").html('<source src="audio/expertise/file1.m

这是一个简单的问题,但不知何故,我似乎无法指出哪里出了问题

我有两个按钮,即“问题”和“需要”。单击前者时,需要播放音频文件1,类似地,单击后者时,音频文件1应停止并播放音频文件2。我为此编写的代码如下:

var playing = false;

$("#problem").click(function(event) {
    $("#audio").html('');
    $("#audio").html('<source src="audio/expertise/file1.mp3" type="audio/mp3"><source src="audio/expertise/file1.wav" type="audio/x-wav"><source src="audio/expertise/file1.ogg" type="audio/ogg">');
    playing = true;
});

$('.need_btn').attr('id', 'need_btn');

$("#need_btn").click(function(event) {
    if (playing == true) {
        $("#audio").trigger('pause');
        playing = false;

        if (playing == false){

            $("#audio").attr('src','<source src="audio/expertise/file2.mp3" type="audio/mp3"><source src="audio/expertise/file2.wav" type="audio/x-wav"><source src="audio/expertise/file2.ogg" type="audio/ogg">');
            $("#audio").trigger('play');
            playing = true;
        };
    }
    else{
        /*$("#audio").trigger('play');*/
        };
});
var=false;
$(“#问题”)。单击(函数(事件){
$(“#音频”).html(“”);
$(“#音频”).html(“”);
玩=真;
});
$('.need_btn').attr('id','need_btn');
$(“#需要”_btn”)。单击(函数(事件){
如果(播放==真){
$(“#音频”).trigger('pause');
玩=假;
如果(播放==错误){
$(“#音频”).attr('src',”;
$(“#音频”).trigger('play');
玩=真;
};
}
否则{
/*$(“#音频”).trigger('play')*/
};
});
这适用于播放文件1,单击第二个按钮时暂停文件1,但不播放文件2。
我可以做些什么来让它工作?

我认为您的问题在于这段代码:

 $("#audio").attr('src','<source src="audio/expertise/file2.mp3" type="audio/mp3"><source src="audio/expertise/file2.wav" type="audio/x-wav"><source src="audio/expertise/file2.ogg" type="audio/ogg">');
现在我知道你们有
.ogg
.wav
.mp3
版本。因此,我认为也可以直接为id为“audio”的元素设置
html
,就像对
file1
所做的那样。我的建议是这样的:

 $("#audio").html('<source src="audio/expertise/file2.mp3" type="audio/mp3"><source src="audio/expertise/file2.wav" type="audio/x-wav"><source src="audio/expertise/file2.ogg" type="audio/ogg">');
$(“#音频”).html(“”);

这将为具有所需标记的相应元素设置
html
。我希望这能让您从正确的方向开始。

感谢您为帮助解决查询的.attr提供正确的语法。
 $("#audio").html('<source src="audio/expertise/file2.mp3" type="audio/mp3"><source src="audio/expertise/file2.wav" type="audio/x-wav"><source src="audio/expertise/file2.ogg" type="audio/ogg">');