2016-04-23 15 views
0

JSで再生中にHTMLAudioElementを停止するにはどうすればよいですか?アプリケーションは、以下のようないくつかのJavaScriptにネストHTMLAudioElementとオーディオクリップを再生している

var s = new Audio('/sounds/s.wav'); 
s.play(); 

HTMLAudioElementドキュメント:https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement

問題クリップは、ユーザーがアクションを実行するたびにプレーする必要があるということです。しかし、前のオーディオクリップがまだ再生されている場合、次のクリップは再生されません(遅延または完全にスキップされます)。

再生中に途中でオーディオクリップをカットする方法はありますか?

何かのようにs.stop()


UPDATE

たぶん、これはまだ重複質問です...

参照重複質問からsound.pause();sound.currentTime = 0;を実施した場合、それが見えるかもしれませんので、さまざまなアクションのための複数のオーディオクリップがあります。このようなものは、各クリップの前に実行することができます。あなたはそれが再び始まっています場合、ファイルの先頭に移動したい場合は

function stopSounds() { 
    sound1.pause(); 
    sound1.currentTime = 0; 

    sound2.pause(); 
    sound2.currentTime = 0; 

    sound3.pause(); 
    sound3.currentTime = 0; 

    sound4.pause(); 
    sound4.currentTime = 0; 

    sound5.pause(); 
    sound5.currentTime = 0; 

    sound6.pause(); 
    sound6.currentTime = 0; 

    sound7.pause(); 
    sound7.currentTime = 0; 
} 
+0

申し訳ありませんが、あなたは再び重複としてマークすることができます - 私は私の側にそれを行うことができるとは思いません。 –

答えて

0

あなたが探している機能は、あなたが、私はそれがで、その後すぐに再生を開始する知っているように(s.currentTime = 0;を設定する必要があり、s.pause(); です少なくともChromeで)。

0

はただ、この関数を呼び出す:

var s = new Audio('/sounds/s.wav'); 
    s.play(); 
    s.pause();