웹마스터 팁
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>
>
>유용하게 쓰였으면 합니다. 그럼~~
제목 | 글쓴이 | 날짜 |
---|---|---|
우리가 사랑한지 몇일째 날짜세주는 PHP 소스 [12] | 레드 | 2005.01.16 |
날짜 구하는 함수.. ... [3] | 김명현 | 2005.01.24 |
게시판 테이블 생성을 쉽게하자.
[2]
![]() | QQQ | 2005.01.29 |
내 컴퓨터가 표현할 수 있는 문자들. [6] | 최호성 | 2005.01.30 |
자바스크립트 단축키 지정을 쉽게하자. [1] | 권태수 | 2005.02.14 |
[날짜 구하는함수업]내일 날짜와 1년 후 년도 구하기 [8] | ssukai | 2005.02.24 |
사용자 등록/DB생성/테이블 생성
[3]
![]() | QQQ | 2005.03.03 |
ASC(순차), DESC(역순) 정렬하기. [4] | Xian | 2005.03.03 |
DB에서 각종 기념일을 내용,순서순으로 뽑아 정렬하기.. | 박순영 | 2005.03.17 |
[초보]아주쉬운 PHP로 그림에 글자 입히기
[11]
![]() | 김규백 | 2005.04.04 |
winamp 방송정보 읽어오기 심각한 문제해결
![]() | 이승원 | 2005.05.04 |
winamp 방송정보 알아오기 (2005년 새로 코딩한 버전)
[8]
![]() | 이승원 | 2005.05.06 |
나만의 미니홈 만들기 ㅡ password.php
[8]
![]() | 예뜨락 | 2005.05.07 |
나만의 미니홈 만들기 ㅡ 간단한 최근글 불러오기 [6] | 예뜨락 | 2005.05.09 |
나만의 미니홈 만들기 ㅡ 메모장 디자인 (html 소스) [4] | 예뜨락 | 2005.05.12 |
mysql 테이블 스키마 보는법. [2] | 최문혁 | 2005.05.14 |
나만의 미니홈 만들기 ㅡ 메모장 소스 | 예뜨락 | 2005.06.09 |
트랙백 기능 구현하기. | 태규 | 2005.06.12 |
대용량 파일 업로드 컴포넌트
[4]
![]() | OTLNO | 2005.06.15 |
효율적인 경로 지정하기 [9] | 대류 | 2005.07.27 |