jQuery image Gallery
jQuery 를 이용한 이미지 갤러리
일단 디자인은 없이 그냥 내키는대로 했다.
CSS는 알아서 입히시길 바랍니다.
(살짝 디자인을 할것을 그랬나...)
* {margin:0; padding:0; list-style: none;} .slider-wrap {margin:100px auto; width:600px; border:1px solid #ccc;} /* 이미지 */ .img-box {width:400px; margin:20px auto; height:250px; overflow:hidden; font-size:0; border:2px solid orchid;} .img-box img {width:100%; height:100%;} /* 버튼 */ .small-img {margin-top:30px; margin:0 auto; width:245px; overflow:hidden; border:3px solid red;} /* width 값 조정 */ .small-img .img-wrap {width:600%; font-size:0; box-sizing: border-box} .small-img .img {display:inline-block; vertical-align: middle; border:2px solid olivedrab; margin-right:10px; width:50px; height:50px; } .small-img .img.on {border:2px solid orange;} .small-img .img a {display:block; width:100%; height:100%; overflow:hidden;} .small-img .img a img {width:100%; height:100%;} .btn-area {text-align: center; margin:10px 0 10px; }
nction slider(){ var $wrap = $('.slider-wrap'), $bigImg = $wrap.find('.img-box'), $imgWrap = $('.img-wrap'); var $item = $imgWrap.find('.img'), $itemWidth = $imgWrap.find('.img').outerWidth(); var $prevBtn = $('.prev'), $nextBtn = $('.next'); var num = 0; var len = $imgWrap.find('.img').length - 4; // 리스트에 뿌려진 화면 개수 // 처음 시작할때 이미지 복사후 붙이기 var clone = $item.children().children().eq(0).clone(); $bigImg.html(clone); $item.on('click', function(){ var $this = $(this); var idx = $wrap.find($item).index($this); var clone = $this.children().children().clone(idx); $this.addClass('on').siblings().removeClass('on'); $bigImg.html(clone); }); function isAnimate() { if($imgWrap.children().is(':animated')) return true; else return false; } $prevBtn.on('click', function(){ if(isAnimate()){ return; } num-- if(num >= 0){ $imgWrap.children().eq(0).animate({ 'margin-left' : '+=' + ($itemWidth + 10 + 'px') // num 은 margin 값 }); }else { num = 0; } }); $nextBtn.on('click', function(){ if(isAnimate()){ return; } num++ if(num > len){ num = len; } else{ $imgWrap.children().eq(0).animate({ 'margin-left' : '-=' + ($itemWidth + 10 + 'px') }); } }); };
sub's
Blog
'개발연습막쓰기 > jQuery' 카테고리의 다른 글
jQuery 수 더하기 (0) | 2019.02.13 |
---|---|
jQuery infinite scroll 무한스크롤 (0) | 2019.02.07 |
setInterval 타이머 (0) | 2018.12.09 |
애트리뷰트 팝업 창 띄우기 (0) | 2018.11.01 |
jQuery 폐쇄형 슬라이드 (0) | 2018.09.18 |