반응형
개요
- HTML5 Audio 404 오류 대안
- HTML5 오디오 파일 없을 때 대체방안
- HTML5 오디오 404 오류시 다른 파일 재생
- audio 태그에 연결되는 src에 해당 파일이 없을 때 404 오류가 발생한다.
- 해당 파일이 없을 때 대신 다른 파일을 재생하고 싶다.
방법 1: source 추가
- audio에 source를 추가하면 브라우저가 알아서 다음 source를 재생한다.
- 테스트환경: (동작함) 크롬 40.0, (동작안함) 인터넷익스플로러 11.0
<script src="//code.jquery.com/jquery.min.js"></script> <script> $(function() { $('.play-myaudio').click(function() { $('#myaudio')[0].play(); }); }); </script> <audio id="myaudio"> <source src='not-exist.ogg'> <source src="http://upload.wikimedia.org/wikipedia/commons/f/fa/B-major.ogg"> </audio> <button class='play-myaudio'>오디오 재생</button>
- 실행결과 (크롬 40.0 콘솔)
audio-error-skip.php:1 GET http://zetawiki.com/ex/js/not-exist.ogg
- → 오류는 발생하지만 버튼을 눌러보면 B-major.ogg가 재생된다.
방법 2: onerror 추가
<script src="//code.jquery.com/jquery.min.js"></script> <script> $(function() { var myaudio = new Audio(); myaudio.onended = function() { console.log( '재생 완료' ); } myaudio.onerror = function() { console.log( this.src + ' 파일 없어서 대신 POP.WAV를 재생' ); var alternative_src = 'http://free-sounds.net/sound-files/special-effects/POP.WAV'; if( this.src == alternative_src) { console.log( 'POP.WAV도 없음!' ); return; } this.src = alternative_src; this.play(); } play_audio = function(url) { console.log( url + ' 파일 재생' ); myaudio.src = url; myaudio.play(); }; }); </script> <button onclick="play_audio('not-exist.wav');">not-exist.wav 오디오 재생</button> <button onclick="play_audio('http://free-sounds.net/sound-files/special-effects/ANGELS_F.WAV');">ANGELS_F.WAV 오디오 재생</button>
반응형
'유용한정보' 카테고리의 다른 글
PHP cURL to kick Shoutcast Source (0) | 2016.02.09 |
---|---|
검색엔진 최적화. 꼭 알아야 할 HTTP 상태 코드 (0) | 2016.02.07 |
각종 확장자 파일모음 (0) | 2016.02.01 |
윈엠프 음악방송 유틸 모음 세팅을 한번에 (윈7,윈XP) (0) | 2015.11.21 |
HTML5 Audio Element, 한 판 붙자! (0) | 2015.07.29 |
스마트폰 음악방송 앱 다운로드 및 설치 방법 (0) | 2015.07.04 |
유튜브 영상 첨부할 때 사용 가능한 옵션 총정리 (0) | 2015.07.02 |
스크롤해도 상단에 고정되는 메뉴 만들기 (0) | 2015.06.20 |
댓글