제이쿼리 롤링 스크립트
페이지 정보
작성자 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글 0건 조회 3,521회 작성일 15-05-12 23:34본문
<div id="slider3">
<a class="prev" id="left" href="#"><img alt="이전" src="http://mylko72.maru.net/jquerylab/images/btn/btn_arr_l.png"></a>
<div class="top-visu">
<ul class="life-style" id="lifestyle">
<li><img alt="" src="http://mylko72.maru.net/jquerylab/images/visu_car_carlife_.jpg"><p class="ac">1</p></li>
<li><img alt="" src="http://mylko72.maru.net/jquerylab/images/visu_club_skcard_.jpg"><p class="ac">2</p></li>
<li><img alt="" src="http://mylko72.maru.net/jquerylab/images/visu_daemyung_event_.jpg"><p class="ac">3</p></li>
<li><img alt="" src="http://mylko72.maru.net/jquerylab/images/visu_doubledouble_event_.jpg"><p class="ac">4</p></li>
<li><img alt="" src="http://mylko72.maru.net/jquerylab/images/visu_member_event_.jpg"><p class="ac">5</p></li>
<li><img alt="" src="http://mylko72.maru.net/jquerylab/images/visu_premium_sale_.jpg"><p class="ac">6</p></li>
<li><img alt="" src="http://mylko72.maru.net/jquerylab/images/visu_show_culture_.jpg"><p class="ac">7</p></li>
<li><img alt="" src="http://mylko72.maru.net/jquerylab/images/visu_vip_open_.jpg"><p class="ac">8</p></li>
<li><img alt="" src="http://mylko72.maru.net/jquerylab/images/visu_member_event_.jpg"><p class="ac">9</p></li>
</ul>
</div>
<a class="next" id="right" href="#"><img alt="다음" src="http://mylko72.maru.net/jquerylab/images/btn/btn_arr_r.png"></a>
<div class="ac" id="control">
<button class="bStart">재생</button>
<button class="bStop">정지</button>
</div>
</div>
<style type="text/css">
#slider3 {position:relative; display:inline-block; width:740px; height:473px; margin-left:15px;}
#slider3 a#left {position:absolute; left:20px; top:200px; z-index:20;}
#slider3 a#right {position:absolute; right:20px; top:200px; z-index:20;}
#slider3 .top-visu {position:relative; width:738px; height:450px; overflow:hidden;}
#slider3 .top-visu ul.life-style {position:absolute; left:0px; top:0px;}
#slider3 .top-visu ul.life-style:after {content: "."; display: block; height: 0px; clear: both; visibility: hidden;}
#slider3 .top-visu ul.life-style li {position:relative; float:left; width:246px;}
#slider3 #control {text-align:center;}
</style>
<script type="text/javascript">
function fn_rollToEx(containerID,slideID,controlID,stepNum,autoStart){
// 롤링할 객체를 변수에 담아둔다.
var el = $('#'+containerID).find('#'+slideID);
var lastChild;
var speed = 3000;
var timer = 0;
var autoplay = false;
el.data('prev', $('#'+containerID).find('.prev')); //이전버튼을 data()메서드를 사용하여 저장한다.
el.data('next', $('#'+containerID).find('.next')); //다음버튼을 data()메서드를 사용하여 저장한다.
el.data('size', el.children().outerWidth()); //롤링객체의 자식요소의 넓이를 저장한다.
el.data('len', el.children().length); //롤링객체의 전체요소 개수
el.data('animating',false);
el.data('step', stepNum); //매개변수로 받은 step을 저장한다.
el.data('autoStart', false); //매개변수로 받은 step을 저장한다.
el.data('play', null);
el.data('stop', null);
el.css('width',el.data('size')*el.data('len')); //롤링객체의 전체넓이 지정한다.
if(arguments[4]==true){
el.data('autoStart', autoStart);
}
if(arguments[2]!= undefined){
el.data('play', $('#'+controlID).find('.bStart'));
el.data('stop', $('#'+controlID).find('.bStop'));
}
if(el.data('autoStart')){
if(timer==0){
timer = setInterval(moveNextSlide, speed);
autoplay = true;
}
}
el.bind({
mouseenter:function(){
if(!autoplay) return false;
if(timer!=0 && el.data('autoStart')){
clearInterval(timer);
timer=0;
}
},
mouseleave:function(){
if(!autoplay) return false;
if(timer==0 && el.data('autoStart')){
timer = setInterval(moveNextSlide, speed);
}
}
});
//el에 첨부된 prev 데이타를 클릭이벤트에 바인드한다.
el.data('prev').bind({
click:function(e){
e.preventDefault();
movePrevSlide();
},
mouseenter:function(){
if(!autoplay) return false;
if(timer!=0 && el.data('autoStart')){
clearInterval(timer);
timer=0;
}
},
mouseleave:function(){
if(!autoplay) return false;
if(timer==0 && el.data('autoStart')){
timer = setInterval(moveNextSlide, speed);
}
}
});
//el에 첨부된 next 데이타를 클릭이벤트에 바인드한다.
el.data('next').bind({
click:function(e){
e.preventDefault();
moveNextSlide();
},
mouseenter:function(){
if(!autoplay) return false;
if(timer!=0 && el.data('autoStart')){
clearInterval(timer);
timer=0;
}
},
mouseleave:function(){
if(!autoplay) return false;
if(timer==0 && el.data('autoStart')){
timer = setInterval(moveNextSlide, speed);
}
}
});
if(arguments[4]!= undefined){
el.data('play').bind({
click:function(){
if(timer==0 && el.data('autoStart')){
timer = setInterval(moveNextSlide, speed);
autoplay = true;
}
}
});
el.data('stop').bind({
click:function(){
if(timer!=0 && el.data('autoStart')){
clearInterval(timer);
timer=0;
autoplay = false;
}
}
});
}
function movePrevSlide(){
if(!el.data('animating')){
//전달된 step개수 만큼 롤링객체의 끝에서 요소를 선택하여 복사한후 변수에 저장한다.
var lastItem = el.children().eq(-(el.data('step')+1)).nextAll().clone(true);
lastItem.prependTo(el); //복사된 요소를 롤링객체의 앞에 붙여놓는다.
el.children().eq(-(el.data('step')+1)).nextAll().remove(); //step개수만큼 선택된 요소를 끝에서 제거한다
el.css('left','-'+(el.data('size')*el.data('step'))+'px'); //롤링객체의 left위치값을 재설정한다.
el.data('animating',true); //애니메이션 중복을 막기 위해 첨부된 animating 데이타를 true로 설정한다.
el.animate({'left': '0px'},'normal',function(){ //롤링객체를 left:0만큼 애니메이션 시킨다.
el.data('animating',false);
});
}
return false;
}
function moveNextSlide(){
if(!el.data('animating')){
el.data('animating',true);
el.animate({'left':'-'+(el.data('size')*el.data('step'))+'px'},'normal',function(){ //롤링객체를 첨부된 size와 step을 곱한 만큼 애니메이션 시킨다.
//전달된 step개수 만큼 롤링객체의 앞에서 요소를 선택하여 복사한후 변수에 저장한다.
var firstChild = el.children().filter(':lt('+el.data('step')+')').clone(true);
firstChild.appendTo(el); //복사된 요소를 롤링객체의 끝에 붙여놓는다.
el.children().filter(':lt('+el.data('step')+')').remove(); //step개수만큼 선택된 요소를 앞에서 제거한다
el.css('left','0px'); ////롤링객체의 left위치값을 재설정한다.
el.data('animating',false);
});
}
return false;
}
}
</script>
관련링크
댓글목록
등록된 댓글이 없습니다.