2012-10-07 3 views
2

jQuery를 사용하여 각 루프에서 간격을 설정하려고합니다. 다음과 같이 작동한다고 생각했지만 행운은 없습니다.각 루프에서 간격 만들기

menuSlide = $(this).animate({ 
    left: '250px' 
}, 50, function() { 
}); 

var slideIn = function() { 

    $('._jsNav').each(function(){ 
    setTimeout(function(menuSlide) { 
    }, 200); 
}); 
} 

$('._jsStage').mouseenter(slideIn); 

나에게 잘못 된 점을 알릴 수있는 사람은 누구입니까? 아니면 내가 잘못 접근하고 있습니까?

감사합니다.

+1

즉, 자바 스크립트가 절전 기능을 지원하지 않으며, 단지에서는 setTimeout 지원입니다 :


단일 jQuery를 라인에서 같은 일을하려면

는 플러그인도 짧은 작성할 수 있습니다. 그리고 당신의 경우 메인 루프는 당신을 위해 빨리 달릴 것입니다, setTimeout의 기본은 메인 루프의 실행을 막지 않습니다. http://stackoverflow.com/questions/951021/what-do-i-do-if-i-want-a-javascript-version-of-sleep –

+0

무엇을하려합니까? 각'._jsNav' 엘리먼트는 마우스가 엘리먼트에 들어간 후 200ms가되어야 하는가? – pimvdb

답변

0

이 링크 JavaScript Timing Events이 예를 살펴 보겠습니다 :

setTimeout(function(){alert("Hello")},3000); // anonymous function 

그리고 질문 (코드) 답변 :

setTimeout(function(menuSlide) { }, 200); // anonymous function with parameter 
// menuSlide is undefined here 

이 코드가 작동해야 어떻게?

추가 :

난 당신이 http://jsfiddle.net/hcFGv/ 같은 것을 만들려고 알고있는 것처럼?

+0

도움을 주셔서 고마워요. 그 예제는 제가 만들고 싶은 것입니다.하지만 빨간색 막대가 순서대로 줄이려고합니다. 먼저 위쪽이 먼저, 다음이 두 번째, 그리고 세 번째로 순서가 짧아집니다. 좋은 효과를 창출하십시오. –

+0

@MattStarkey 죄송합니다,이 예제를보아야합니다 : http://jsfiddle.net/hcFGv/1/ – webdeveloper

0

약간의 도움이 필요합니다. plugin jquery-timing. 그것은 당신이 매우 짧은 코드으로 원하는 것을 : 전부 그

$('._jsStage').mouseenter(function(){ 
    $('._jsNav').each($).wait(200).animate({left:250},50,$); 
}); 

!

$('._jsStage').on('mouseenter').$('._jsNav').each($).wait(200).animate({left:250},50,$); 
관련 문제