2009-08-19 4 views
0

나는 onmouseover 부근의 이미지의 onmouseover를 비활성화하려는 nav 요소가 있습니다.페이지상의 이벤트에 의해 트리거 된 자바 스크립트 기능을 "끄기"가장 좋은 방법은 무엇입니까?

나는 단지 루프를 통해 이미지를 수집하고 onmouseover를 'on'으로 설정 한 다음 nav 요소의 onmouseout을 사용하여 이미지를 원래대로 설정했습니다.

navmoveover/onmouseout을 통해 onmouseover 기능을 켜고 끄는 더 좋은 방법이 있습니까?

+1

나는이 필요가있는 것을 배우는 것이 대단히 궁금합니다. 두 개의 포인터 장치를 다루고 있습니까? – lance

+0

누군가 당신의 nav 요소 위로 마우스를 올려 놓으면 이미지 위에 마우스를 올릴 수 없으므로 왜 이미지를 비활성화해야합니까? –

+0

nav는 IE에서 문제를 일으키는 마우스 오버 기능이있는 이미지 위로 확장됩니다. 하지만 지금은 어쨌든 문제를 해결하지 못할 수도 있다고 생각하고 있습니다. 이미지 마우스 오버가 실행되지 않으면 정상입니다. 하지만 일단 트리거되면 요소를 숨기더라도 항해에 문제가 발생합니다. –

답변

0

jQuery를 사용하십시오. 이런 식으로 뭔가를 수행해야합니다

$("#id_of_your_element").hover(function(){ 
    $(".other_elements_class").unbind("mouseover").unbind("mouseover"); 
}, function(){ 
    $(".other_elements_class").hover(your_mouseover_function, your_mouseout_function); 
}); 
3

을 다음하지 이유 : 하나에

  • 포인트를 하나의 함수에 모든 이미지의 모든 onmouseout 이벤트를 모든 이미지에

    1. 포인트 모든 onmouseover 이벤트 함수
    2. 전역 범위에서 변수가 있다고 가정 해 봅시다. var imageInFocus = null;
    3. t를 입력 할 때마다 그는 기능 :
      if(imageInfocus == null), 현재 이미지 이름을 지정하고 해당 이미지를 처리합니다.
      else, null이 아닌 경우 무시하십시오.
      그런 식으로 한 번에 하나의 이미지 만 처리하게됩니다.
    4. (onmouseout)이면 null을 imageInFocus에 다시 지정하면 다음 이미지에 사용할 수 있습니다.
  • 0

    좋아, 나는 모든 것들이 효과가 있다고 생각하지만 그건 내 문제가되지 않는다. 문제는 이미지 mouseover 기능에서 설정된 것이 무언가가 더 이상 활성 상태가 아니거나 표시되거나 마우스 오버 이벤트가 발생하지 않아도 이미지가 롤오버 된 후에도 탐색에 영향을 미칩니다.

    감사합니다.

    관련 문제