자바스크립트 질문드립니다.

자바스크립트 질문드립니다.

QA

자바스크립트 질문드립니다.

본문

랜덤배너를 구현하고 있는중입니다.

 

현재 코드는 랜덤배너가 하나만 랜덤으로 나오는데.

 

제가구현할려고 하는거는 한꺼번에 이미지들이 다나오고

 

거기서 랜덤으로 보이게 구현할려고 합니다..

 

어떻게 하면 될까요?

 

현재 코드는 아래와 같습니다. 어떻게 수정하면될까요? 

$(document).ready(function() {

    function random_imglink(){

   var myimages=new Array()

 

      /* 각각의 이미지 경로 지정 */

      myimages[1]="img/1.jpg"

      myimages[2]="img/2.jpg"

      myimages[3]="img/3.jpg"

  

      /* 각각의 이미지 링크 지정 */

      var imagelinks=new Array()

      imagelinks[1]="링크 경로"

      imagelinks[2]="링크 경로"

      imagelinks[3]="링크 경로"

 

   var ry=Math.floor(Math.random()*myimages.length)

   if (ry==0)

   ry=1

 

   document.write('<a href='+'"'+imagelinks[ry]+'"'+' target=_blank><img src="'+myimages[ry]+'" border=0></a>')

   }

   random_imglink()

 

});

이 질문에 댓글 쓰기 :

답변 2

검색으로 찾은 정보인데, https://stackoverflow.com/a/15667651

 

참고가 되셨으면 합니다.

 

예제 코드


<script>
$(document).ready(function() {
     $('img.img_lg').shuffle();
});
jQuery.fn.shuffle = function () {
  var j;
  for (var i = 0; i < this.length; i++) {
      j = Math.floor(Math.random() * this.length);
      $(this[i]).before($(this[j]));
  }
  return this;
};
</script>
<div id="tout4">
    <img src="images/gallery01.jpg" class="img_lg"/>
    <img src="images/gallery02.jpg" class="img_lg"/>
    <img src="images/gallery03.jpg" class="img_lg"/>
</div>

 

그리고  다음 코드는 문서가 모드 로드된 뒤 실행되는 코드 영역의 의미를 가지고 있습니다.

$(document).ready(function() {

//...

});

 

그래서 별도의 사용자 함수를 만들고, 해당 사용자 함수를 호출한다면,

사용자 함수는 

$(document).ready(function() { }); 영역 밖에 정의하고,

호출만 그 안에 해주는 것이 적절합니다.

var ry=Math.floor(Math.random()*myimages.length);

 

//if (ry==0)

//   ry=1

ry = ry+1;

이렇게 해주시면 될꺼 같아요. 지금 최대값이 2까지만 나오니..

 

아 제가 질문을 잘못봤네요.

 

한번에 이미지가 다나오고 거기서 랜덤으로 보인다는 말 뜻을 잘 모르겠네요.

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 2

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT