웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
[re] [소스] [배경음악] 첫곡은 랜덤, 그 이후로는 순차재생 --> 문제해결!
2003.06.02 01:19
안녕하세요?
윈미플 9.0 사용시, 한곡이 끝나면 다음곡이 자동으로 시작되지 않는 문제를 해결했습니다.
의외로 방법은 아주 간단합니다. (알아내기까진 천신만고의 고생을.... ㅠ_ㅠ)
주경님의 이벤트 핸들링 방법은 아래와 같았죠?
<Script event="EndOfStream()">
....... (선곡하기. 생략)
bgmusic.Filename = song[bgnum];
</Script>
다른데는 그대로 쓰고, 해당부분을 아래와 같이 바꾸면 됩니다.
<Script>
function to_next()
{
.....(선곡하기.. 생략)
bgmusic.Filename = song[bgnum];
}
</Script>
.....
.....
<Script event="EndOfStream()">
setTimeout("to_next()", 100);
</Script>
즉, 해당부분을 함수로 따로 뽑은 다음에, SetTimeout 함수로 약간의 시간차를 두고 call 한거죠.
테스트해보세요. 이젠 윈미플 9.0에서도 잘됩니다.
제 홈피에서 확인해보세요. 많은 윈미플 9.0 사용자들의 테스트를 거쳤습니다.
http://mulmandu.bawi.org
그럼 이만.
>얼마전에 랜덤재생에 대한 스크립트를 올렸던 사람입니다.
>이번 소스는 그와는 약간 다른,
>첫곡은 랜덤으로 선택하고 그 다음곡 부터는 순차적으로 재생하는 소스입니다.
>저는 이 방법을 개인적으로 더 좋아하고요, 역시 이걸 사용중입니다.
>그럼~~ 시작해볼까요.
>
>(제가 정말 힘들게 만든 소스이므로 무단 복사나 타 사이트 배포를 금지합니다.)
>
>
><script language="JavaScript">
>song = new Array();
>song[1] = "http://음악주소";
>song[2] = "http://음악주소";
>song[3] = "http://음악주소";
>song[4] = "http://음악주소";
>song[5] = "http://음악주소";
>song[6] = "http://음악주소";
></script>
>
><script language="JavaScript">
>function change()
>{
>if(bgnum == 7){bgnum = 1;}
>if(bgnum == 0){bgnum = 6;}
>bgmusic.Filename =song[bgnum];
>}
></script>
>
><SCRIPT FOR="bgmusic" EVENT="EndOfStream()" LANGUAGE="JScript">
>bgnum = bgnum + 1;
>if(bgnum == 7){bgnum = 1;}
>bgmusic.Filename =song[bgnum];
></SCRIPT>
>
>
>여기까지의 스크립트는 head 사이에 넣어줍니다.
>
>노래가 6곡 이상이라면
>song[7] = "http://음악주소";
>라는 식으로 추가해주시면 되고요.
>
>두번째 스크립트의
>if(bgnum == 7){bgnum = 1;}
>if(bgnum == 0){bgnum = 6;}
>에서 7 대신에 노래곡수 + 1
>6 대신에 노래곡수를 적어주시면 됩니다.
>
>세번째 스크립트도 마찬가지로
>if(bgnum == 7){bgnum = 1;}
>에서 7 대신에 노래곡수 + 1 을 적어주시면 됩니다.
>
>
>
>그리고 아래의 스크립트는 본문에 넣어줍니다.
>(본문 제일 밑에 두는 것을 추천합니다.)
>
>
><object id="bgmusic" classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" type="application/x-oleobject" width="0" height="0">
><param name="AllowChangeDisplaySize" value="false">
><param name="AnimationAtStart" value="false">
><param name="AutoSize" value="false">
><param name="EnableContextMenu" value="false">
><param name="EnableFullScreenControls" value="false">
><param name="EnablePositionControls" value="false">
><param name="EnableTracker" value="false">
><param name="PlayCount" value="0">
><param name="ShowAudioControls" value="false">
><param name="ShowCaptioning" value="false">
><param name="ShowControls" value="false">
><param name="ShowDisplay" value="false">
><param name="ShowGotoBar" value="false">
><param name="ShowPositionControls" value="false">
><param name="ShowStatusBar" value="false">
><param name="ShowTracker" value="false">
><param name="TransparentAtStart" value="true">
><param name="AudioStream" value="-1">
><param name="AutoStart" value="true">
><param name="AllowScan" value="true">
><param name="AutoRewind" value="false">
><param name="Balance" value="0">
><param name="BufferingTime" value="5">
><param name="ClickToPlay" value="true">
><param name="CursorType" value="0">
><param name="CurrentPosition" value="-1">
><param name="CurrentMarker" value="0">
><param name="DisplayBackColor" value="0">
><param name="DisplayMode" value="0">
><param name="DisplaySize" value="0">
><param name="Enabled" value="true">
><param name="InvokeURLs" value="true">
><param name="Language" value="-1">
><param name="Mute" value="false">
><param name="PreviewMode" value="false">
><param name="Rate" value="1">
><param name="SelectionStart" value="-1">
><param name="SelectionEnd" value="-1">
><param name="SendOpenStateChangeEvents" value="false">
><param name="SendWarningEvents" value="false">
><param name="SendErrorEvents" value="false">
><param name="SendKeyboardEvents" value="false">
><param name="SendMouseClickEvents" value="false">
><param name="SendMouseMoveEvents" value="false">
><param name="SendPlayStateChangeEvents" value="false">
><param name="VideoBorderWidth" value="0">
><param name="VideoBorderColor" value="0">
><param name="VideoBorder3D" value="false">
><param name="Volume" value="-600">
><param name="WindowlessVideo" value="false">
></object>
>
><script language="JavaScript">
>bgnum=Math.floor(Math.random()*6) + 1;
>bgmusic.Filename =song[bgnum];
></script>
>
>
>노래를 추가하실때는
>bgnum=Math.floor(Math.random()*6) + 1;
>에서 6 대신에 노래곡수를 적어주세요.
>
>
>
>부록입니다.
>노래 콘트롤 하기.
><a href="#none" onclick="javascript:bgnum=bgnum-1;change();" ONFOCUS='this.blur()'>이전곡</a>
><a href="#none" onclick="bgmusic.pause()" ONFOCUS='this.blur()'>일시정지</a>
><a href="#none" onclick="bgmusic.stop()" ONFOCUS='this.blur()'>정지</a>
><a href="#none" onclick="bgmusic.play()" ONFOCUS='this.blur()'>재생</a>
><a href="#none" onclick="javascript:bgnum=bgnum+1;change();" ONFOCUS='this.blur()'>다음곡</a>
>
>유용하게 쓰였으면 합니다. 그럼~~
윈미플 9.0 사용시, 한곡이 끝나면 다음곡이 자동으로 시작되지 않는 문제를 해결했습니다.
의외로 방법은 아주 간단합니다. (알아내기까진 천신만고의 고생을.... ㅠ_ㅠ)
주경님의 이벤트 핸들링 방법은 아래와 같았죠?
<Script event="EndOfStream()">
....... (선곡하기. 생략)
bgmusic.Filename = song[bgnum];
</Script>
다른데는 그대로 쓰고, 해당부분을 아래와 같이 바꾸면 됩니다.
<Script>
function to_next()
{
.....(선곡하기.. 생략)
bgmusic.Filename = song[bgnum];
}
</Script>
.....
.....
<Script event="EndOfStream()">
setTimeout("to_next()", 100);
</Script>
즉, 해당부분을 함수로 따로 뽑은 다음에, SetTimeout 함수로 약간의 시간차를 두고 call 한거죠.
테스트해보세요. 이젠 윈미플 9.0에서도 잘됩니다.
제 홈피에서 확인해보세요. 많은 윈미플 9.0 사용자들의 테스트를 거쳤습니다.
http://mulmandu.bawi.org
그럼 이만.
>얼마전에 랜덤재생에 대한 스크립트를 올렸던 사람입니다.
>이번 소스는 그와는 약간 다른,
>첫곡은 랜덤으로 선택하고 그 다음곡 부터는 순차적으로 재생하는 소스입니다.
>저는 이 방법을 개인적으로 더 좋아하고요, 역시 이걸 사용중입니다.
>그럼~~ 시작해볼까요.
>
>(제가 정말 힘들게 만든 소스이므로 무단 복사나 타 사이트 배포를 금지합니다.)
>
>
><script language="JavaScript">
>song = new Array();
>song[1] = "http://음악주소";
>song[2] = "http://음악주소";
>song[3] = "http://음악주소";
>song[4] = "http://음악주소";
>song[5] = "http://음악주소";
>song[6] = "http://음악주소";
></script>
>
><script language="JavaScript">
>function change()
>{
>if(bgnum == 7){bgnum = 1;}
>if(bgnum == 0){bgnum = 6;}
>bgmusic.Filename =song[bgnum];
>}
></script>
>
><SCRIPT FOR="bgmusic" EVENT="EndOfStream()" LANGUAGE="JScript">
>bgnum = bgnum + 1;
>if(bgnum == 7){bgnum = 1;}
>bgmusic.Filename =song[bgnum];
></SCRIPT>
>
>
>여기까지의 스크립트는 head 사이에 넣어줍니다.
>
>노래가 6곡 이상이라면
>song[7] = "http://음악주소";
>라는 식으로 추가해주시면 되고요.
>
>두번째 스크립트의
>if(bgnum == 7){bgnum = 1;}
>if(bgnum == 0){bgnum = 6;}
>에서 7 대신에 노래곡수 + 1
>6 대신에 노래곡수를 적어주시면 됩니다.
>
>세번째 스크립트도 마찬가지로
>if(bgnum == 7){bgnum = 1;}
>에서 7 대신에 노래곡수 + 1 을 적어주시면 됩니다.
>
>
>
>그리고 아래의 스크립트는 본문에 넣어줍니다.
>(본문 제일 밑에 두는 것을 추천합니다.)
>
>
><object id="bgmusic" classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" type="application/x-oleobject" width="0" height="0">
><param name="AllowChangeDisplaySize" value="false">
><param name="AnimationAtStart" value="false">
><param name="AutoSize" value="false">
><param name="EnableContextMenu" value="false">
><param name="EnableFullScreenControls" value="false">
><param name="EnablePositionControls" value="false">
><param name="EnableTracker" value="false">
><param name="PlayCount" value="0">
><param name="ShowAudioControls" value="false">
><param name="ShowCaptioning" value="false">
><param name="ShowControls" value="false">
><param name="ShowDisplay" value="false">
><param name="ShowGotoBar" value="false">
><param name="ShowPositionControls" value="false">
><param name="ShowStatusBar" value="false">
><param name="ShowTracker" value="false">
><param name="TransparentAtStart" value="true">
><param name="AudioStream" value="-1">
><param name="AutoStart" value="true">
><param name="AllowScan" value="true">
><param name="AutoRewind" value="false">
><param name="Balance" value="0">
><param name="BufferingTime" value="5">
><param name="ClickToPlay" value="true">
><param name="CursorType" value="0">
><param name="CurrentPosition" value="-1">
><param name="CurrentMarker" value="0">
><param name="DisplayBackColor" value="0">
><param name="DisplayMode" value="0">
><param name="DisplaySize" value="0">
><param name="Enabled" value="true">
><param name="InvokeURLs" value="true">
><param name="Language" value="-1">
><param name="Mute" value="false">
><param name="PreviewMode" value="false">
><param name="Rate" value="1">
><param name="SelectionStart" value="-1">
><param name="SelectionEnd" value="-1">
><param name="SendOpenStateChangeEvents" value="false">
><param name="SendWarningEvents" value="false">
><param name="SendErrorEvents" value="false">
><param name="SendKeyboardEvents" value="false">
><param name="SendMouseClickEvents" value="false">
><param name="SendMouseMoveEvents" value="false">
><param name="SendPlayStateChangeEvents" value="false">
><param name="VideoBorderWidth" value="0">
><param name="VideoBorderColor" value="0">
><param name="VideoBorder3D" value="false">
><param name="Volume" value="-600">
><param name="WindowlessVideo" value="false">
></object>
>
><script language="JavaScript">
>bgnum=Math.floor(Math.random()*6) + 1;
>bgmusic.Filename =song[bgnum];
></script>
>
>
>노래를 추가하실때는
>bgnum=Math.floor(Math.random()*6) + 1;
>에서 6 대신에 노래곡수를 적어주세요.
>
>
>
>부록입니다.
>노래 콘트롤 하기.
><a href="#none" onclick="javascript:bgnum=bgnum-1;change();" ONFOCUS='this.blur()'>이전곡</a>
><a href="#none" onclick="bgmusic.pause()" ONFOCUS='this.blur()'>일시정지</a>
><a href="#none" onclick="bgmusic.stop()" ONFOCUS='this.blur()'>정지</a>
><a href="#none" onclick="bgmusic.play()" ONFOCUS='this.blur()'>재생</a>
><a href="#none" onclick="javascript:bgnum=bgnum+1;change();" ONFOCUS='this.blur()'>다음곡</a>
>
>유용하게 쓰였으면 합니다. 그럼~~
제목 | 글쓴이 | 날짜 |
---|---|---|
크롬리스(Chromless) 웹어플리케이션 -2 [5] | sundew | 2003.05.18 |
크롬리스(Chromless) 웹어플리케이션 -1 [1] | sundew | 2003.05.17 |
XXX는 객체가 아닙니다. [1] | RedEye | 2003.05.12 |
자바스크립트의 활용함에 대해.... [5] | RedEye | 2003.05.12 |
자바스크립트의 활용함에 대해 2 .... [1] | RedEye | 2003.05.18 |
[벅스 전용] 랜덤 음악 재생 Javascript. [1] | sundew | 2003.05.11 |
구문 오류 및 런타임 오류 모음 [1] | 아이쿠 | 2003.05.10 |
이벤트 핸들러 (Event Handler) 모음 [2] | 아이쿠 | 2003.05.10 |
랜덤 배경화면 구현하기 초간단 스크립트 공개(중복아님) [5] | 호호짱 | 2003.05.07 |
[re] [소스] [배경음악] 첫곡은 랜덤, 그 이후로는 순차재생 --> 문제해결! [1] | 장진석 | 2003.06.02 |
상태바에 링크 주소 99.9% 가리기 - 다른것 [8] | 세죠위그이 | 2003.05.05 |
상태바에 링크 주소 쉽게 99.9999% 가리기 [8] | 최상락 | 2003.05.03 |
또다른 TOP으로 가기 [6] | RedEye | 2003.05.05 |
시디롬 뱉어 내는 스크립.. [2] | 피너츠 | 2003.04.29 |
[! 수정판 !] 일반 자바 스크릅트와 차원이 다른 VB 스크립트 만들기! [10] | 제로보드 | 2003.04.29 |
숫자인지 아닌지 알아보는함수 [1] | 김승태 | 2003.04.27 |
좌표관련메소드모음 [1] | 김승태 | 2003.04.27 |
유용한건 아니지만 마우스 클릭으로 블루스크린띠우기 [3] | 루룿 | 2003.04.25 |
png-24 포맷 알파값 이미지 로딩하기 [9] | D3 | 2003.04.20 |
메뉴이동입니다. [5] | 데빌스텔스 | 2003.04.20 |