2013-06-07 4 views
0

jquery에 대한 새로운 소식입니다. 내 질문이 너무 기본적인 경우 사전에 용서해주십시오. CSS와 jquery 문제가 혼합 된 모양의 호버 슬라이드 효과에 몇 가지 문제가 있습니다. 이미지 위에 마우스를 올리면 처음에는 이미지 끝까지 완벽하게 슬라이드되지만 호버 효과는 슬라이딩 이미지에서 시작하는 대신 두 번째로 첫 번째 요소 아래에서 절반 만 슬라이드하는 것처럼 보입니다. 결국.Jquery 토글 ('슬라이드')은 한 번만 슬라이드합니다.

나는이 많은 다른 가능성을 시도했지만 누군가가 올바른 방향 :

내가 할 수를 달성하기 위해 노력하고 무엇의 예에 날 지점 수 있다면 지금까지 운이 없었다, 나는 매우 감사 할 것 당신이 가져가에 토글을 사용하면 사전

+0

의심의 여지가 없다 '너무 기본적인'! –

답변

0

여기에

http://jsfiddle.net/robolist/rK4GD/

$('.proimg').hover(function(event) { 
     $('.boxcaption',this).stop().toggle('slide'); 
}).on('mouseleave',function(event) { 
     $('.boxcaption',this).stop().toggle('slide')}); 

많은 감사를 발견, 당신이 할 mouseleave 이벤트를 수행 할 필요가 없습니다. 또한 정지 끝에 두 번째 점프 분명 큐 먼저, 부울 매개 변수를 취주의 :

그냥 수행

$('.proimg').hover(function(event) { 
    $('.boxcaption',this).stop(true, true).toggle('slide'); 
}); 

바이올린 : http://jsfiddle.net/rK4GD/10/

참조가 : http://api.jquery.com/stop/

+0

안녕하세요. @ Bernhard Poiss, 많은 도움을 주셔서 감사합니다. 원래는 비슷한 것을 시도했지만 호버 효과가 일관성이없고 '움직이지 않음'으로 바뀌며 때로는 호버의 덮개에서 호버를 발견하기 위해 바뀝니다. – LearningJquery

+0

@LearningJquery : 주요 문제 불규칙성을 얻는 이유는 요소가 뷰로 들어가는 두 번째 시간에 호버 이벤트가 트리거되는 이벤트 버블 링입니다. 이것을 분류하기 위해'.boxcaption'에서 슬라이드에 사용 된 실제 요소는 슬라이드'.proimg'를 트리거하는 요소 안에 중첩되어서는 안됩니다. 해킹하여'.boxcaption' 요소의'stopPropagation()'호출을 추가 할 수도 있습니다 'mouseenter'. 이와 비슷합니다 : [** http : //jsfiddle.net/RsmxQ/**] (http://jsfiddle.net/RsmxQ/) – Nope

+0

@ FrançoisWahl 완벽 해, 고맙습니다. :) – LearningJquery

관련 문제