2013-10-22 1 views
-1

요소 호버에서 trigers하는 addClass 함수가 있습니다. 내가 원하는 것은 해당 요소를 클릭 할 때 해당 클래스를 제거하는 것입니다. 그러나 그것을 클릭하면 자동으로 클래스가 추가됩니다. (이 클래스를 추가하는 방법입니다.)2 시간 동안 아무 것도 되돌릴 수 없게 만들기

그래서 요소가 2 초 동안 트리거되는 것을 막을 수있는 방법이 있습니까? 내부

+1

당신이 사용할 수있는 코드 – PeeHaa

+0

을 공유하십시오 (당신이 그 기능을 원하는 아닌지 확실하지) 나는 또한이 항목에서 벗어날 경우 자신을 지우려면 시간 제한 방법을 추가 된' setTimeout'을'x' 초 후에'addClass'로 가져 가면'x' 초가 성가 시게됩니다. –

+0

나는 그것이 당신이 요구 한 것이 아니라는 것을 안다. 클릭 한 후에는 마우스를 놓고 요소를 다시 입력해야만 mouseenter 코드가 실행됩니다. http://jsfiddle.net/Ez4wR/ –

답변

0

당신은 당신이 항목에 마우스를 움직일 때 타임 아웃을 사용해야합니다.

jsFiddle Demo

var hoverTimeout; 

$('.yourItem').on({ 
    'mouseover' : function() { 
     hoverTimeout = setTimeout(function() { 
      // do whatever 
     }, 2000); 
    }, 
    'mouseout' : function() { 
     clearTimeout(hoverTimeout); 
    }  
}); 
+0

아주 좋지만 첫 번째 호버를 느리게 만듭니다. 원하지 않습니다. 그러나 나는 그것과 JasonP의 답변을 결합하여 잘하면 좋은 결과를 얻을 것입니다. 감사합니다. – Ivan

1

사용에게 timeout 당신의 hover

.hover(function() { 
    setTimeout(function() { 
     //code that takes place after 2 seconds 
    }, 2000); 
}, ... 
+1

2 초 후에도 클래스가 추가됩니다. 그것은 호버 이벤트를 막지 않습니다. – PSL

관련 문제