티스토리 뷰

728x90

안녕하세요. 오늘은 자동으로 이미지가 슬라이드 되면서 화살표를 클릭시 옆으로 이동하는 이미지 배너소스를 알려드릴께요.

 

 

  1. <!DOCTYPE html>
  2. <html>
  3.     <head>
  4.         <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5.         <script type="text/javascript" src="https://code.jquery.com/jquery-1.12.3.min.js"></script>
  6.         <style type="text/css">
  7.         .con_mini {width:100%; height:622px; background:url("../images/radger_mini05.jpg") no-repeat center center;}    
  8.         .con_bb {width:1200px; height:360px; margin:0 auto; padding-top:180px; overflow: hidden; position:relative; }
  9.         .left {float:left; width:50px; margin-top:110px;}
  10.         .right {float:right; width:50px; margin-top:110px;}
  11.         .rolling_panel {float:left;  position: relative; width: 1100px; height: 320px; margin: 0; padding: 0; overflow: hidden; }
  12.         .rolling_panel ul { position: absolute; margin: 5px; padding: 0; list-style: none; }
  13.         .rolling_panel ul li { float: left; width: 360px; height: 320px;}
  14.         </style>
  15.     </head>
  16.     <body>
  17.       <div class="con_s">
  18.         <div class="con_bb">
  19.           <div class="left"><a href="javascript:void(0)" id="prev"><img src="/images/btn_left1.png"></a></div>
  20.           <div class="rolling_panel">
  21.               <ul>
  22.                   <li><img src="/images/sl01.png" alt="거치대"></li>
  23.                   <li><img src="/images/sl02.png" alt="mg이어폰이어셋"></li>
  24.                   <li><img src="/images/sl03.png" alt="유선이어폰"></li>
  25.                   <li><img src="/images/sl04.png" alt="ppt버튼"></li>
  26.                   <li><img src="/images/sl05.png" alt="주먹마이크"></li>
  27.               </ul>
  28.           </div>
  29.           <div class="right"><a href="javascript:void(0)" id="next"><img src="/images/btn_right2.png"></a></div>
  30.         </div>
  31.    </div>
  32.         <script type="text/javascript">
  33.             $(document).ready(function() {
  34.                 var $panel = $(".rolling_panel").find("ul");
  35.                 var itemWidth = $panel.children().outerWidth(); // 아이템 가로 길이
  36.                 var itemLength = $panel.children().length;      // 아이템 수
  37.                 // Auto 롤링 아이디
  38.                 var rollingId;
  39.                 auto();
  40.                 // 배너 마우스 오버 이벤트
  41.                 $panel.mouseover(function() {
  42.                     clearInterval(rollingId);
  43.                 });
  44.                 // 배너 마우스 아웃 이벤트
  45.                 $panel.mouseout(function() {
  46.                     auto();
  47.                 });
  48.                 // 이전 이벤트
  49.                 $("#prev").on("click", prev);
  50.                 $("#prev").mouseover(function(e) {
  51.                     clearInterval(rollingId);
  52.                 });
  53.                 $("#prev").mouseout(auto);
  54.                 // 다음 이벤트
  55.                $("#next").on("click", next);
  56.                 $("#next").mouseover(function(e) {
  57.                     clearInterval(rollingId);
  58.                 });
  59.                 $("#next").mouseout(auto);
  60.                 function auto() {
  61.                     // 2초마다 start 호출
  62.                     rollingId = setInterval(function() {
  63.                         start();
  64.                    }, 2000);
  65.                 }
  66.                 function start() {
  67.                     $panel.css("width", itemWidth * itemLength);
  68.                     $panel.animate({"left": - itemWidth + "px"}, function() {
  69.                         // 첫번째 아이템을 마지막에 추가하기
  70.                         $(this).append("<li>" + $(this).find("li:first").html() + "</li>");
  71.                         // 첫번째 아이템을 삭제하기
  72.                         $(this).find("li:first").remove();
  73.                         // 좌측 패널 수치 초기화
  74.                         $(this).css("left", 0);
  75.                     });
  76.                 }
  77.                 // 이전 이벤트 실행
  78.                 function prev(e) {
  79.                     $panel.css("left", - itemWidth);
  80.                     $panel.prepend("<li>" + $panel.find("li:last").html() + "</li>");
  81.                     $panel.animate({"left": "0px"}, function() {
  82.                         $(this).find("li:last").remove();
  83.                    });
  84.                 }
  85.                 // 다음 이벤트 실행
  86.                 function next(e) {
  87.                     $panel.animate({"left": - itemWidth + "px"}, function() {
  88.                         $(this).append("<li>" + $(this).find("li:first").html() + "</li>");
  89.                         $(this).find("li:first").remove();
  90.                         $(this).css("left", 0);
  91.                     });
  92.                 }
  93.             });
  94.         </script>
        </body>
    </html>
728x90