리의 사이클을 반복하면서 반복하는 것이 가장 좋은 방법은 무엇입니까?jquery, timer 또는 chaining 함수?
타이머를 사용해야합니까, 아니면 더 좋은 방법이 있습니까?
예를 들어, 한 번에 하나씩 리를 표시하고 싶습니다. 내가 끝을 쳤을 때 나는 위로 돌아가서 다시 시작하고 싶다.
리의 사이클을 반복하면서 반복하는 것이 가장 좋은 방법은 무엇입니까?jquery, timer 또는 chaining 함수?
타이머를 사용해야합니까, 아니면 더 좋은 방법이 있습니까?
예를 들어, 한 번에 하나씩 리를 표시하고 싶습니다. 내가 끝을 쳤을 때 나는 위로 돌아가서 다시 시작하고 싶다.
질문을 올바르게 이해할 수 있을지 모르지만 그 질문에 찔림이 있습니다.
타이머는 애니메이션을 수행 할 때나 반복 횟수가 많을 것으로 생각되는 경우 유용합니다 (스레드를 늘리지 않기 위해).
몇 가지 LI 요소를 만들고 UL 요소에 추가하는 경우 (애니메이션처럼) 점진적으로 표시하지 않으려면 for 루프 만 사용하십시오.
새로운 jQuery delay()
이 여기에 유용 할 수 있습니다.
$(document).ready(function(){
$('ul li').hide();
function loopLi(element){
element.fadeIn('slow').delay(5*1000).fadeOut('slow');
var newElement;
if(element.is(':last')){
newElement = element.parents('ul').find('li:first');
}else{
newElement = element.next();
}
loopLi(newElement);
}
loopLi($('ul li:first'));
});
UPDATE :
.delay()
내가 생각했던 모든 아니다. 보인다는 리 페이드 전에 다른 함수를 호출 할 수 있도록 비동기 방식으로 작동합니다. 여기에 더 나은 방법이있다, 간격
$(document).ready(function(){
$('li:first').addClass('current');
$('li:not(:first)').hide();
var slideshow = setInterval(function(){
$('li.current').fadeOut('slow');
var nextElement;
if($('li.current').is(':eq('+ $('li').length +')')){
nextElement = $('li:first');
}else{
nextElement = $('li.current').next();
}
$('li.current').hide().removeClass('current');
nextElement.addClass('current').fadeIn('slow');
}, 10*1000);
});
littl 구타하지만,이 func 내 인생을 너무 많은 eaiser 만들거야 :-) – prodigitalson
이 나를 위해 메모리를 만듭니다 – zsharp
hmmm ... 당신은 jQuery 1.4를 사용하고 있습니까? – munch
당신은 당신이 jCarousel 또는 다른 회전 목마 형 플러그인을 사용할 수 많은 기능을 필요로합니다. 당신의 프리젠 테이션이 어떤 모양인지 알 수 없으므로, 이것이 가치보다 더 큰 문제가 아닐 수도 있습니다.
누구나 읽을 때, 순서가 지정되지 않은 목록을 사용하여 슬라이드 쇼 형식을 구현하려는 것처럼 들립니다. –