ie6下js的onmouseover和onmouseout事件连续触发问题的解决方法
又一具ie6下的js问题。就是当一个标签包含子标签时,鼠标从父标签移动到子标签会连续触发父标签及子标签的onmouseover和onmouseout事件。又是从万能的百度上找了以下方法解决,特转!
function isMouseLeaveOrEnter(e, handler) { if (e.type != 'mouseout' && e.type != 'mouseover') return false; var reltg = e.relatedTarget ? e.relatedTarget : e.type == 'mouseout' ? e.toElement : e.fromElement; while (reltg && reltg != handler) {reltg = reltg.parentNode; } return (reltg != handler); }
function setVisible(e,col){ if(isMouseLeaveOrEnter(e, col)){ col.childNodes[2].style.visibility = "visible"; } } function setInvisible(e, col){ if(isMouseLeaveOrEnter(e, col)){ col.childNodes[0].style.background = "#000"; col.childNodes[2].style.visibility = "hidden"; } }