2012-06-02 7 views
0

내가이 jQuery를 조각 우연히 그래서 때를, 어쨌든 http://jsfiddle.net/RExZs/jQuery를 호버/지연/fadeIn의 DIV의

나는 호버 기능으로 바꿀려고 :

$(".faded").each(function(i) { 
    $(this).delay(i * 400).fadeIn(); 
});​ 

가 직접보기 nav-menu 버튼 위에 마우스를 올려 놓으면이 멋진 지연 효과로 div가 사라집니다. 그리고 마우스가 떠날 때, div는 사라져야합니다. '매장'버튼 (앵커) 용이므로 마우스로 가리키면 제품 목록을 표시하는 데 사용됩니다.

지금까지 내가 가지고 올 한 모든입니다

$(".products").hover(function(){ // I added THIS line 
    $(".products-list").hide().each(function(i) { 
    $(this).delay(i * 400).fadeIn(); 
    }); 
}); // and of course, THIS line 

문제는이 사업부의 한 빨리 페이지가로드, LOL 표시 시작한다는 것입니다.

이제 "저장"버튼을 가리키면 효과는 으로 끝나지만 마우스를 놓으면 다시 시작되어 해당 div가 다시로드됩니다.

내게 도움이되거나, 저의 jQuery 중독을 극복 할 수있는 곳을 말해주십시오. :)

고마워요!

+1

어떻게 작동하지 않는 코드를 작성 하시겠습니까? – Alnitak

답변

0

마우스 - 인 및 마우스 - 아웃에 대해 별도의 동작이 필요합니다.

토글 할 때 기존 애니메이션을 중지하고 여분의 true 매개 변수로 애니메이션 대기열을 비우고 현재 애니메이션의 끝으로 이동해야한다는 매개 변수를 지정해야합니다.

$(".products").hover(function() { 
    $(".products-list").stop(true).each(function(i) { 
     $(this).delay(i * 200).fadeIn(); 
    }); 
}, function() { 
    $(".products-list").stop(true, true).fadeOut(); 
}); 

그것은 당신이 당신의 "로 마우스를"효과이 원하는 것을 따라 데모

+0

불행히도'.fadeIn()'은 전환 중에 잡힌 div의 부분 불투명도를 "기억"합니다. 여러 개의 호버가 있으면 결국 모두 잃게됩니다. 또한 두 번째 매개 변수는 easing 또는 callback이며 왜 'true'로 보냅니 까? – Sinetheta

+0

@ Sinetheta 두 번째'true' 매개 변수 때문에 필자는 필자의 피더에서 그것을 볼 수 없습니다. – Alnitak

+0

애니메이션이 완료되기 전에'.products '에 마우스를 넣거나 빼십시오. – Sinetheta

0

에 대한 http://jsfiddle.net/alnitak/tvCBq/를 참조하십시오. jsFiddle

$(".products").hover(
function(){ 
    $(".products-list").each(function(i) { 
     $(this).delay(i * 400).fadeIn(); 
    }); 
}, 
function(){ 
    $(".products-list").stop(true).show().hide(); 
});​ 

PS : 당신은 항상 jQuery를의 최신 버전을 사용하려고합니다. .products에 마우스를 올리거나 내고 나서 빨리 항목을 퇴색하는 순서를 변경할 수 있습니다. 그러나 1.4 대신 jquery 1.7을 사용하면 항상 올바른 순서로 사라집니다. jQuery는 애니메이션이 중간에 대기하는 방식을 변경했습니다. jQuery 1.7.2 fiddle

+0

그래, 방금 뭔가 알아 챘어. 이 문제는 div 중 하나를 클릭하면 사라지는 문제입니다. – Stephen

+0

물론, 내가 묻는 질문에 대답하고 있었기 때문입니다. '.products' 아이템을'.product-list' 아이템으로 만들어 마크 업을 약간 변경하면 자신이 nav 메뉴를 갖게됩니다. 그에 따라 바이올린을 편집했습니다. – Sinetheta

관련 문제