2014-12-01 3 views
0

IOS 8.0.1이 설치된 IPad에 문제가 표시됩니다. 그것은 무한한 오디오입니다. page1.html에서 재생 중입니다. 다른 페이지 (예 : page2.html)로 이동해도 사운드가 재생되지 않을 것으로 예상되지만 여전히 재생 중입니다. unload, pagehide 및 visibilitychange 이벤트를 사용하여 중지하려고 시도했지만 모든 작업이 실패했습니다.페이지가 변경 될 때 ios 오디오가 일시 중지됩니다.

코드

<audio id="sound" loop src="audio/baby.mp3"></audio> 
<script>   
     var player = document.getElementById("sound"); 
     window.addEventListener("unload", function() { 
      player.pause(); 
     }); 
     if ('onpagehide' in window) 
      window.addEventListener("pagehide", function() { 
      player.pause(); 
     });  
     if ('onvisibilitychange' in window) 
      window.addEventListener("visibilitychange", function() { 
      player.pause(); 
     }); 
</script> 

I가 활성화 된 페이지를 다시하면 사운드는 멈춘다.

+0

페이지 가시성 API를 사용하여 주제 adout의 crossbrowser 찾기를 포함, 내 자신의 루프 기능으로 대체되지만 이벤트 'visibilitychange'전혀 탭의 변화에 ​​화재, 브라우저를 최소화하거나 다른 URL로 이동하십시오. – onlydimon

답변

0

알아보십시오!

어쩌면 Safari의 버그 일 수 있습니다. 네이티브 속성 "루프"를 사용하면 오디오를 멈출 수 없습니다.

그래서 나는 페이지 가시성 검사

player.addEventListener("ended", function() { 
        if (windowVisible) 
         player.play(); 
       });