구글링해서 배너를 랜덤으로 추출하게 해놨는데요
문제는 하나만의 배너를 랜덤으로 추출하고 싶은게 아니라
배너가 3개 있다면 배너 3개를 모두 추출하고 위아래 자리만 변경하도록 하고 싶습니다.
아래의 소스를 수정하여 제가 원하는 방법으로 변경 가능한지 여쭤보고 싶습니다
1. 아래 소스를 <head></head> 사이에 삽입하세요.
<script language="JavaScript" type="text/JavaScript">
<!--
// 배너랜덤출력
var banner=new Array();
banner[0]="<a href='배너1 링크 URL'><img src='배너1 이미지 경로' border='0'></a>";
banner[1]="<a href='배너2 링크 URL'><img src='배너2 이미지 경로' border='0'></a>";
banner[2]="<a href='배너3 링크 URL'><img src='배너3 이미지 경로' border='0'></a>";
var random_banner=Math.floor(Math.random()*(banner.length));
//-->
</script>
<!--
// 배너랜덤출력
var banner=new Array();
banner[0]="<a href='배너1 링크 URL'><img src='배너1 이미지 경로' border='0'></a>";
banner[1]="<a href='배너2 링크 URL'><img src='배너2 이미지 경로' border='0'></a>";
banner[2]="<a href='배너3 링크 URL'><img src='배너3 이미지 경로' border='0'></a>";
var random_banner=Math.floor(Math.random()*(banner.length));
//-->
</script>
2. 배너를 출력하고 싶은 위치에 아래 소스를 추가하세요.
<script>document.write(banner[random_banner]);</script>
댓글 9
자바스크립트에도 문자열을 랜덤으로 섞는 함수가 있을꺼에요.
123이란 문자열을 섞은 다음 첫번째 문자에 해당하는 것을 보여주고 두번째 해당하는 숫자를 보여주고 세번째 해당하는 숫자를 보여주면 되겠죠.
이거 보시고 응용해보세요~
<script>
var banners = new Array() ;
banners[0] = '<a href="URL주소" target="_self" title="배너를 클릭하면 이동합니다." /><img src="이미주소.jpg/png/gif" style="padding-bottom:5px;" border="0" /></a>' ;
banners[1] = '<a href="URL주소" target="_self" title="배너를 클릭하면 이동합니다." /><img src="이미주소.jpg/png/gif" style="padding-bottom:5px;" border="0" /></a>' ;
banners[2] = '<a href="URL주소" target="_self" title="배너를 클릭하면 이동합니다." /><img src="이미주소.jpg/png/gif" style="padding-bottom:5px;" border="0" /></a>' ;
banners[3] = '<a href="URL주소" target="_self" title="배너를 클릭하면 이동합니다." /><img src="이미주소.jpg/png/gif" style="padding-bottom:5px;" border="0" /></a>' ;
var bannerReq = new Array() ;
var theOne ;
var z=0 ;
for (i=0; i<banners.length; i++){
bannerReq[i] = i ;
while (z<banners.length){
theOne = Math.floor(Math.random()*banners.length) ;
if (banners[theOne]!="_selected!") {
document.write(banners[theOne]) ;
banners[theOne] = "_selected!" ;
z++ ;
}
}
}
</script>