2012-06-07 4 views
0

출시되면 이벤트를 중지가 루프에 포함되어다른 이벤트가 난이 jQuery를 가지고

$(function() { 
     // create the image rotator 
     var lightShow = setInterval(rotateImages, 500); 


    function rotateImages() { 

     var oCurPhoto = $('#photoShow div.current'); 
     var oNxtPhoto = oCurPhoto.next(); 

     if (oNxtPhoto.length == 0){ 
oNxtPhoto = $('#photoShow div:first'); 
} 


     oCurPhoto.removeClass('current').addClass('previous'); 

oNxtPhoto.hide().addClass('current').fadeIn(2000, function() { 

oCurPhoto.removeClass('previous'); 
}); 


    } 
    }); 

때문에이 라인은 5 회 연속
하지만 내가 원하는 것은 중지하는 것입니다 실행됩니다 한 번에 fadeIn의 효과가 루프로 시작됩니다. fadeIn.

+0

이 당신의 전체 코드를 붙여 넣습니다. – Jebin

+0

http://jsfiddle.net/rolandfeghaly/Jxhxf/92/ – Roland

+1

http://jsfiddle.net/rolandfeghaly/Jxhxf/97/ – Roland

답변

0

페이드를 멈추려는 요소의 페이드가 발생하기 전에 .stop()을 사용해야합니다.

모든 애니메이션 대기열이 지워집니다. 염두에두고 그것은 또한 콜백 함수에 점점 페이드를 중지합니다.

자세한 내용은 여기를 찾아 우리가 바이올린에 그것을 시도 할 수 있도록 .stop() - jQuery API

관련 문제