Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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
如何播放每个X声音的音频?在javascript中_Javascript_Jquery_Html_Audio - Fatal编程技术网

如何播放每个X声音的音频?在javascript中

如何播放每个X声音的音频?在javascript中,javascript,jquery,html,audio,Javascript,Jquery,Html,Audio,我试着用这种方法做,但不起作用 Javascript: <script> document.getElementById('player').play(); x = document.one.numberO.value; i = 0; x2 = document.one.intervalO.value; function out(){ if ((document.one.numberO.value == "")||(document.one.numberO.value <

我试着用这种方法做,但不起作用

Javascript:

<script>
document.getElementById('player').play();
x = document.one.numberO.value;
i = 0;
x2 = document.one.intervalO.value;
function out(){
    if ((document.one.numberO.value == "")||(document.one.numberO.value < 1)||(document.one.intervalO.value < 5)||(document.one.intervalO.value == ""))
    {
        alert("error");
    }
    else{
var intervalID = setInterval(start, x2*1000);
 i++;
 if (i == x)
 {
     clearInterval(intervalID);
 }
 }
}

function start(){
 document.getElementById('player').play();
}

document.getElementById('player').play();
x=document.one.numberO.value;
i=0;
x2=文件1.间隔值;
函数输出(){
如果((document.one.numberO.value==“”)| |(document.one.numberO.value<1)| |(document.one.intervalO.value<5)| |(document.one.intervalO.value==“”)
{
警报(“错误”);
}
否则{
var intervalID=设置间隔(开始,x2*1000);
i++;
如果(i==x)
{
clearInterval(intervalID);
}
}
}
函数start(){
document.getElementById('player').play();
}
和HTML:

<form name="one">
    Number <br />
    <input type="text" name="numberO"><br />
    <br />
    Interval <br />
    <input type="text" name="intervalO">
</form> 
<audio id="player" src="too.mp3"></audio>   
<div>   
    <button onclick="out();">Start</button>
    <button onclick="document.getElementById('player').pause()">||</button>
    <br>
    <br>
    <button onclick="document.getElementById('player').volume+=0.1"> +</button>
    <button onclick="document.getElementById('player').volume-=0.1"> -</button>
</div> 

数字


间隔
开始 ||

+ -
我需要每X秒播放一次声音(我从文本字段获取值),播放2次(也从文本字段获取)

var audioPlayer=document.getElementById(“播放器”);
var audioPlayCount=parseInt(document.one.numberO.value);
var audioSeconds=parseInt(document.one.intervalO.value);
var start=function()
{
audioPlayer.play();
};
var out=函数()
{
如果(!audioPlayCount | | |!audioSeconds | | audioSeconds<5)
{
警报(“错误”);
回来
}
对于(变量i=0;i
我还没有测试过这段代码,但你已经明白了。

给你:)希望它能帮助你

函数输出(){
x=document.getElementById('a')。值;
intrvl=设定间隔(“声音(x)”,x*1000);
}
i=0;
功能声音(x)
{
如果(x==i)
{
清除间隔(intrvl);
}
i++;
document.getElementById('player').play();
}

JS-Bin

parseInt
中添加
,10
。而且for循环对
i
也不起任何作用。此外,应该使用函数声明而不是函数表达式。是否希望如果某些人在x字段中输入10,则声音应在10秒后或每10秒后运行??
var audioPlayer = document.getElementById("player");
var audioPlayCount = parseInt(document.one.numberO.value);
var audioSeconds = parseInt(document.one.intervalO.value);

var start = function()
{
    audioPlayer.play();
};

var out = function()
{
    if(!audioPlayCount || !audioSeconds || audioSeconds < 5 )
    {
        alert("error");
        return;
    }

    for(var i = 0; i < audioPlayCount; i++)
    {
        setTimeout(start, 1000 * audioSeconds);
    }
};