설정의 일부로 함수를 호출하는 hoverIntent를 사용하고 있습니다. 나는이가 (? 올바른) '기능을 참조'라고 생각한다함수가 jQuery 콜백으로 호출되거나 직접 호출되는 것을 어떻게 감지 할 수 있습니까?
var HIconfig = {
interval: 250,
sensitivity: 8,
over: myFunction,
timeout: 100,
out: myOtherFunction
};
그러나, 나는이 시간에 말했다 기능을 다시 사용하고 명시 적으로 jQuery를 객체를 전달하고 싶습니다. 그래서 저는 그것을 함수에 추가했습니다.
이제 hoverIntent에 의해 함수가 참조되거나 명시 적으로 호출되는 시점을 파악해야합니다. 내 생각에 $ (특정)에 특정 DOM 요소가 포함되어 있는지 확인해 보았습니다.
myFunction($myObject){
if($(this).is('li')){
$myObject = $(this)
};
$myObject.doSomething...
}
하지만 문제가 있습니다. hoverIntent를 통해 호출
: 나는 모두 $ (이) 및 $ 로그 아웃 경우 myObject에 이러한 결과입니다 명시 적으로
$(this) = [Window PT02-home-page.php#]
$myObject = [li#Trigger-0.nav-main-tab]
내가 $(this).is('li')
을 테스트 할 수있는 객체에게 전달을 통해 호출
$(this) = [li#Trigger-0.nav-main-tab]
$myObject = Object { originalEvent=, more...}
첫 번째 시나리오에서는 사실입니다. 내가 테스트를 수행 할 때와 같이
내가 두 번째로,하지만, 파이어 폭스는 그것을 좋아하지 않습니다 수 없습니다
g.nodeName is undefined
한 가지 제안은 1.4.1로 전환 및 테스트하려고했다 반대편에 대한 .isPlayObject :
if (jQuery.isPlainObject($myObject))...
이것은 Firefox에서 잘 작동합니다. 그러나 IE8은 항상 true를 반환합니다.
내 질문 : 내 기능이 hoverIntent에서 대 직접 호출되는 방법
내 논리의 관점에서 단순히 해제 방법인가?
만약 그렇다면 함수에서 변수에 객체를 명시 적으로 전달했는지 지속적으로 테스트 할 수있는 방법이 있습니까?
플러그인은 나의 궁극적 인 목표 일 것이다. 하지만 이번 릴리스에는 시간이 없을 것 같습니다. 별개의 기능은 의미가 있습니다 (그리고 간단하게, 뒤늦은 견해에서!) –