jquery 의 mouseover, mouseout 여러 번 해결 방법 을 촉발 합 니 다.

2291 단어 htmljquery

이 글 은 잘 분석 되 었 다.http://www.cnblogs.com/shaojun/archive/2011/03/16/1986249.html
 
 
 
/ / 세 함수 로 mouseover, mouseout 에서 여러 번 발생 하 는 문 제 를 해결 합 니 다.            function contains(parentNode, childNode) {                 try{                     if (parentNode.contains) {                     return parentNode != childNode && parentNode.contains(childNode);                     } else {                     return !!(parentNode.compareDocumentPosition(childNode) & 16);                     }                 }catch(e){}             }                            function checkHover(e,target){                 if (getEvent(e).type=="mouseover") {                 return !contains(target,getEvent(e).relatedTarget||getEvent(e).fromElement) && !((getEvent(e).relatedTarget||getEvent(e).fromElement)===target);                 } else {                 return !contains(target,getEvent(e).relatedTarget||getEvent(e).toElement) && !((getEvent(e).relatedTarget||getEvent(e).toElement)===target);                 }             }                         function getEvent(e){                 return e||window.event;             }
 
 

  
myElement.onmouseover = function (e){ if (checkHover(e, this )){ do someting... } } myElement.onmouseout = function (e){ if (checkHover(e, this )){ do someting... } }

좋은 웹페이지 즐겨찾기