2016-06-13 3 views
-4

나는 내 작품을 전시 할 수있는 미니 갤러리를 만들고 있습니다. 제가 원했던 것은 마지막 사진까지 "오른쪽"버튼 이미지를 클릭해야 할 때마다 처음부터 이미지가 반복 될 것입니다. if 문을 시도했지만 아무 일도 일어나지 않습니다. 조금만 도와 주시면 고맙습니다. 감사합니다!무한 루프 이미지 자바 스크립트

$(function(){ 

var currIndex; 

//$("#header").hide(); 

$("ul li img").click(function() { 

    currIndex = $(this).parent(); 

    var selectsrc = $(this).attr("src"); 
    $("#display").attr("src", selectsrc); 

    $("#gray").slideDown(); 
    $("#white").fadeIn(); 
}); 

$("#gray").click(function(){ 
    $("#gray").slideToggle(); 
    $("#white").fadeOut(); 
}); 

$("#right").click(function(){ 

    var numOfItems = $("ul li img").length; 

    var nextIndex = currIndex.next(); 
    var nextImg = nextIndex.children("img").attr("src"); 
    $("#display").attr("src", nextImg); 
    currIndex = nextIndex; 

    if (currIndex == numOfItems-1){ 
     alert("HELLO"); 
     currIndex = 0; 
    } 

    else { 
     alert("HI"); 
     currIndex++; 
    } 


}) 



}); 
+0

'.next()': _ 일치하는 요소 세트에서 각 요소의 바로 다음 형제를 가져옵니다. 선택기가 제공되면 해당 선택기와 일치하는 경우에만 다음 형제를 검색합니다 ._ 숫자 (색인)가 아닙니다. – melancia

+0

'if 문을 시도했지만 아무것도 발생하지 않았습니다. ' 당신은 거기에 경고를 가지고, 적어도 그들 중 하나가 일어난, 또는 오류가 귀하의 콘솔에 도달했습니다. –

답변

1

난 당신의 코드를 시도하지 않은,하지만 오른쪽 클릭 기능처럼 보이는 ...

if (currIndex == numOfItems-1){ 
    alert("HELLO"); 
    currIndex = 0; 
    } 
    else 
    { 
     alert("HI"); 
     currIndex++; 
    } 

이 있어야 할 ...

currIndex++; 

    if (currIndex >= numOfItems){ 
    currIndex = 0; 
    } 

그리고 왼쪽 클릭 함수는 currIndex를 증가시켜야하고 처음에는 0으로 설정해야합니다. :-)