2009-09-06 8 views
4

내 페이지에 이미지가 있고 사용자가 마우스로 이미지를 가리키면 툴팁 (qtip 플러그인 사용)이 표시됩니다. 이 문제는 커서가 이미 이미지 위로 마우스를 가져 가면 이미지가로드되고 onmouseover 이벤트가 발생하지 않고 사용자가 이미지에서 커서를 이동 한 다음 다시 켜기 전까지는 툴팁이 표시되지 않는 경우에만 문제가 발생합니다. 내가 사용해야하는 또 다른 이벤트입니까, 아니면이 작업을 수행하는 더 좋은 방법입니까?JQuery 호버 메서드?

+0

제안 사항으로, 해당 코드의 실패 지점을 볼 수 있도록 개선 된 코드를 표시 할 것을 권장합니다. 또한 이미 얻은 것을 제안하거나 시도하지 않도록 * 작동하지 않는 것을 보는 것이 좋습니다. –

답변

8

사용자가 이미지의 onload 이벤트에서 이미지 위에 있는지 확인하고 싶지만 이미지 위에 마우스가 있는지 확인하는 방법은 없다 (적어도 jQuery에서). 따라서 jQuery's live eventmouseovermouseout과 함께 사용하려고 할 수 있습니다. 나는이 문제를 회피 할 내 의심을 가지고 있지만 그것은해볼 가치가있다 :

jQuery(function(){ 
    $('img.has_tooltip').mousemove(function(){ 
     $(this).showTooltip(); }); 
    $('img.has_tooltip').live('mouseout', function(){ 
     $(this).hideTooltip(); }); 
}); 

이 즉시 작동합니다 : 그것은 아마 작동하지 않는 경우에는 mousemove 이벤트를 사용할 수

jQuery(function(){ 
    $('img.has_tooltip').live('mouseover', function(){ 
     $(this).showTooltip(); }); 
    $('img.has_tooltip').live('mouseout', function(){ 
     $(this).hideTooltip(); }); 
}); 

사용자가 자신의 마우스를 움직이면서 사용자가 자신의 마우스를 이미지에서 강제로 움직여야하는 대신에 움직이는 것처럼. 이상적은 아니지만 일시 중지 된 사용자를 제외한 모든 사용자에게 적용됩니다.

물론이 두 예제 모두에서 xxxTooltip 메서드를 qtip 플러그인의 적절한 것으로 전환하십시오.

+0

어떤 솔루션이 효과가 있었는지 알려주시겠습니까, 잭? – donut

+0

나는 내가하고있는 것에 받아 들여지는 것으로 판명 된 마우스 움직임을 사용했지만, 다른 방법을 시도하지 않았다. –

+0

나는 mouseover와 mouseout 솔루션을 사용했고, 훌륭하게 작동했습니다! –