Onmouseover被调用多次
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Onmouseover被调用多次相关的知识,希望对你有一定的参考价值。
当一个容器,如div,不包含元素时。Onmouseover只执行一次,正常。当这个div包含其他子元素的时候,这个事件就被执行了多次,今天遇到了这个问题,特此记录下,解决方案。
这个是由于onmouseover引起的,主要是因为ul里面包含了子元素,会造出鼠标移动到子元素,比如li上面也会触发ul的onmouseover事件,造成了混乱。解决办法:
1,如果是IE浏览器,用onmouseleave代替。
2,不管什么浏览器,下面这个方法都是牛逼的,不信,你试试。
- ?stateList.onmouseout?=?function(e){????
- ??if(?!e?)?e?=?window.event;????
- ??var?reltg?=?e.relatedTarget???e.relatedTarget?:?e.toElement;????
- ??while(?reltg?&&?reltg?!=?this?)?reltg?=?reltg.parentNode;????
- ??if(?reltg?!=?this?){????
- ??????//?è??é????ˉ??¥??–????onmouseleave??o??????"?¤"?????£???????
- ????stateList.style.display=‘none‘;??
- ?}??
- }??
原文在这里:http://blog.csdn.net/teresa502/article/details/6103458
以上是关于Onmouseover被调用多次的主要内容,如果未能解决你的问题,请参考以下文章
JS事件 鼠标经过事件(onmouseover)鼠标经过事件,当鼠标移到一个对象上时,该对象就触发onmouseover事件,并执行onmouseover事件调用的程序。