2012-03-05 4 views
0

슬라이드를 작성한 스크립트를 만들었습니다. 아래 코드를 참조하십시오.다음 작업을 수행하는보다 쉬운 방법

<script> 

jQuery(document).ready(function() { 
    jQuery(".da-feedback .da-quote").hide(); 
    jQuery(".da-feedback .da-quote:first-child").show(); 
    setTimeout('NextItem(1)',6000); 
}); 

function NextItem($n) { 

jQuery('.da-feedback .da-quote:nth-child('+$n+')').slideUp('slow'); 
$n = $n + 1; 
jQuery('.da-feedback .da-quote:nth-child('+$n+')').slideDown('slow'); 
setTimeout('NextItem('+$n+')',6000); 
} 

</script> 

<div class="da-feedback"> 
    <div class="da-quote" style="display: none; ">....</div> 
    <div class="da-quote" style="display: none; ">....</div> 
    <div class="da-quote" style="display: none; ">....</div> 
</div> 

jquerys가이 기능을 쉽게 사용할 수 있는지 알고 싶습니다.

답변

1

.delay()을 들여다 보았습니까?

function NextItem(n) { 
    $('.da-feedback .da-quote:nth-child('+$n+')').slideUp('slow') 
     .delay(6000).slideDown('slow', NextItem(n++)); 
    // callback fires upon completion 
}; 
NextItem(1); 

그런데, 실제로 어떤 영향을 미치지는 않지만 자바 스크립트 당신은 $로 변수를 시작할 필요가 없습니다, 그리고 jQuery를 함께은과 변수가있는 경우에만 경우 그렇게 할 규칙 간주 jQuery 객체.

+0

많이 깔끔하게 보입니다. 나는 이것을 언급하지 않았다는 것을 알지만 회 돌이를 만드는 방법은 무엇입니까? –

+0

'.slideDown'이 완료되면 콜백 함수가 발생합니다.이 경우 콜백 함수는'NextItem'에 대한 재귀 호출입니다. – Blazemonger

+0

대단히 감사합니다. –

0

jQuery toggle() 및 jQuery next() 및 prev() 메소드를 확인하십시오.

Ohw ... 그리고 아마도 slideToggle()이 서비스 될 수 있습니다.

관련 문제