回答:
function isPlaying(audelem) { return !audelem.paused; }
Audioタグにはpaused
プロパティがあります。一時停止していない場合は、再生中です。
期間を確認できます。継続時間が0秒を超えていて、一時停止されていない場合は再生されます。
var myAudio = document.getElementById('myAudioID');
if (myAudio.duration > 0 && !myAudio.paused) {
//Its playing...do your job
} else {
//Not playing...maybe paused, stopped or never played.
}
!myAudio.paused||!myAudio.currentTime
がより良い仕事をすると信じています。
!myAudio.paused || myAudio.currentTime
ですか?
!myAudio.paused || myAudio.currentTime
。返信したことがないようです...
私は本当にこのスレッドに遅れていますが、この実装を使用して、サウンドが再生されているかどうかを判断します。
service.currentAudio = new Audio();
var isPlaying = function () {
return service.currentAudio
&& service.currentAudio.currentTime > 0
&& !service.currentAudio.paused
&& !service.currentAudio.ended
&& service.currentAudio.readyState > 2;
}
オーディオ要素のフラグのほとんどは、ここで読むことができる準備完了状態(MDN HTMLMediaElement.readyState)を除けば明らかです。
document.getElementsByTagName('audio').addEventListener('playing',function() { myfunction(); },false);
トリックを行う必要があります。
オーディオが実際に再生を開始しているかどうかを確認するには、特にストリームがある場合は、に確認audio.played.length
する必要があり1
ます。オーディオが実際に開始音である場合のみ、1になります。それ以外の場合は0
。これはハックのようなものですが、SafariやChromeなどのモバイルブラウザーでも機能します。
onplayイベントを使用できます。
var audio = document.querySelector('audio');
audio.onplay = function() { /* do something */};
または
var audio = document.querySelector('audio');
audio.addEventListener('play', function() { /* do something */ };
牽引ボタンの再生と停止でこのjqueryコードを使用しています。再生ボタンは再生と一時停止ボタンです
const help_p = new Audio("audio/help.mp3");//Set Help Audio Name
$('#help_play').click(function() {//pause-Play
if (help_p.paused == false) {
help_p.pause();//pause if playing
} else {
help_p.play();//Play If Pausing
}
});
$('#help_stop').click(function() {//Stop Button
help_p.pause();//pause
help_p.currentTime = 0; //Set Time 0
});
isPlayingなどのメソッドはありませんが、これを行う方法はいくつかあります。
このメソッドは、オーディオの再生中に進行状況の%を取得します。
function getPercentProg() {
var myVideo = document.getElementById('myVideo');
var endBuf = myVideo.buffered.end(0);
var soFar = parseInt((endBuf / myVideo.duration) * 100);
document.getElementById('loadStatus').innerHTML = soFar + '%';
}
パーセントが0より大きく100未満の場合は再生され、それ以外の場合は停止されます。