답변:
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 에서 읽을 수있는 준비 상태와는 별개로 분명하다고 생각 합니다.
이 기능을 사용해보십시오! 위치가 시작 또는 끝이면 오디오 재생이 실행되지 않습니다.
function togglePause() {
if (myAudio.paused && myAudio.currentTime > 0 && !myAudio.ended) {
myAudio.play();
} else {
myAudio.pause();
}
}
오디오가 실제로 재생되는지 확인하려면, 특히 스트림이있는 경우을 확인 audio.played.length
해야 1
합니다. 오디오가 실제로 시작 사운드 인 경우에만 1이됩니다. 그렇지 않으면 0
. 해킹과 비슷하지만 Safari 및 Chrome과 같은 모바일 브라우저에서도 여전히 작동합니다.
견인 버튼 재생 및 중지와 함께이 jquery 코드를 사용하고 있습니다. 재생 버튼은 재생 및 pouse 버튼입니다.
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보다 작 으면 재생 중이고 그렇지 않으면 중지됩니다.