关于 级联菜单闪动的解决

时间:2021-05-31 20:08:51

今天给人看一个 级联闪烁的bug 分析了很久 发现ie下mouseout事件触发频率太高了 !

解决办法 加一些检测代码 只要鼠标好在 他的子元素就不return 返回

代码如下

function category_overOut(id){
     var theEvent = window.event || arguments.callee.caller.arguments[0];
     var TempObj=theEvent.toElement?theEvent.toElement:theEvent.relatedTarget; // 兼容ie firefox
     if (document.getElementById(id).contains(TempObj)) {   // 如果是子元素
        return;    // 结束函式
    }

// 执行的代码

document.getElementById(id).className='';
}

 

 调用的时候在元素的直接定义 onmouseout="category_overOut(this.id)"