2010-12-08 6 views
-2

연속 자바 스크립트 스크롤러Contextous Javascript Scroller

다음과 이전 클릭을 처리하는 아래 스크립트가 있습니다. 다음과 이전 버튼 동작시 왼쪽에서 오른쪽으로 그리고 그 반대 방향으로이 자바 스크립트를 추가 한 약 1-3 개의 div가 있습니다.

계속해서 스크롤하고 싶습니다. 세 번째 div 스크롤러가 첫 번째 div로 다시 이동해야합니다. 그것은 반대 방향으로 진행해서는 안됩니다. 흐름은 반복적으로 계속되어야합니다.

해결 방법을 알려주십시오.

<div id="mainContainer"> 
<!--mainContainer Div Start--> 
<div class="arrowRight"><img src="images/arrow_left.png" width="36" height="39"></div> 
<div class="arrowLeft"><img src="images/arrow_right_disable.png" width="36" height="39"> </div> 
    <div class="slider"> 
    <div class="slides"> <img src="images/1.jpg" width="250" height="250"></div> 
    <div class="slides"> <img src="images/2.jpg" width="250" height="250"></div> 
    <div class="slides"><img src="images/3.jpg" width="250" height="250"> </div> 
    </div> 
    <!--mainContainer Div End--> 
</div> 

JS

이 같은
window.onload=init; 

function init(){ 

var arrowLeft=document.querySelector('.arrowLeft');  
var arrowRight=document.querySelector('.arrowRight');  
arrowRight.addEventListener('click',slideRight,false); 
arrowLeft.addEventListener('click',slideLeft,false); 

    var flag=1; 
    function slideRight(){ 
    if(flag<3){ 
    flag++; 
    arrowLeft_div.innerHTML="<img src='images/arrow_right.png' width='36' height='39'>";  
    var slider=document.querySelector('.slider'); 
    slider.style.webkitTransform+='translate(-1024px, 0px)'; 
    } 
    if(flag==3){ 
    arrowRight_div.innerHTML="<img src='images/arrow_left_disable.png' width='36'  
    height='39'>"; 
    } 
} 


    function slideLeft(){ 
    if(flag>1){ 
    flag--; 
    arrowRight_div.innerHTML="<img src='images/arrow_left.png' width='36' height='39'>";  
    var slider=document.querySelector('.slider'); 
    slider.style.webkitTransform+='translate(1024px, 0px)'; 
    } 
    if(flag==1){ 
    arrowLeft_div.innerHTML="<img src='images/arrow_right_disable.png' width='36' 
    height='39'>"; 

    } 
} 

} 
+0

정확하게 무엇입니까? –

+0

연속 슬라이더를 만들고 싶습니다. 3 개의 div가 차례로 있다고 가정 해 봅시다. 다음에 타격을 가할 때 2 초의 div가 걸릴 것이고, 다른 히트가 3 번째의 div가 될 것입니다. 이 버튼을 클릭 한 후 아무 칸이나 누르면 1 번째 div를 다시 볼 수 있습니다. 세 부분을 반복합니다. 1, 2, 3, 1, 2, 3과 같이 반복됩니다. 위의 코드는 세 번째 div에 도달 할 때까지 작동합니다. 그 후 다음 클릭을 사용 중지했습니다. 하지만 다음 버튼을 계속 활성화하고 다음 클릭시 첫 번째 div를 다시 표시하려고합니다. 그것은 지속적인 프로세스를 보일 것입니다. – user504023

+0

나는 모든 것을 분명하게하기 위해 html 코드도 추가했습니다. 희망이 도움이 될 것입니다. – user504023

답변

1

뭔가?

var flag=1; 
function slideRight(){ 
    if(flag<3){ 
    flag++; 
    arrowLeft_div.innerHTML="<img src='images/arrow_right.png' width='36' height='39'>";  
    var slider=document.querySelector('.slider'); 
    slider.style.webkitTransform+='translate(-1024px, 0px)'; 
} 
    if(flag==3){ 
    arrowLeft_div.innerHTML="<img src='images/arrow_right.png' width='36' height='39'>";  
    var slider=document.querySelector('.slider'); 
    slider.style.webkitTransform+='translate(2048px, 0px)'; 
    flag = 1; 
} 
+0

실제로이 스크립트는 슬라이드를 역전 된 위치로 되 돌린다. 그러나 div를 연속적인 방향으로 움직이기를 원한다. 아래처럼 비슷합니다. http://cssglobe.com/lab/easyslider1.7/01.html – user504023

+0

오. 그럼 나도 몰라 :) – MrMisterMan