안녕하세요 저자님
p.583 4번 문제 질문입니다.
https://ancandy.github.io/web1/s4-up.html
주어진문제를 해결했습니다. 그런데,
저자님께서 의도하신대로 제가 코드를 짰는지 모르겠습니다.
앞서 다른 문제를 풀때는 <select> 와 <option>태그의 인덱스를 활용하면되었는데,
체크박스는 인덱스로의 접근이 어려웠습니다. 그래서, 코드를 보시면
new Array()를 만들고 배열에 노래 주소를 저장해서 불러오는 방식으로 했는데요.
Q. 제가 궁금한것은 제가 짠방식이 맞는 방식인가요?
위에 링크 서버가 문제인지, 노래 로딩이 오래 걸리네요. 그리고
favicon.ico 404 이런오류도 나구요. 클릭 하시고 조금 기다리면 노래는 잘나옵니다.
다만 저는 체크박스들을 모두 다음과 같이 알아내고
songs = document.getElementsByClassName("song");
onended 핸들러에서 checked 속성이 true인 다음 것을 찾아서 play()하였습니다.
따로 array() 를 생성하지 않았습니다.
<form>
<label><input class="song" type="checkbox" value="media/Aegukga.mp3"> 애국가 </label><br>
<label><input class="song" type="checkbox" value="media/moonglow.mp3"> Moon Glow</label><br>
<label><input class="song" type="checkbox" value="media/EmbraceableYou.mp3"> Embraceable You</label><br>
<label><input class="song" type="checkbox" value="media/Aegukga.mp3"> 애국가 </label><br>
<input type="button" value="연주시작" onclick="startPlay()">
</form>