Onmouseover被调用多次

当一个容器,如div,不包含元素时。Onmouseover只执行一次,正常。当这个div包含其他子元素的时候,这个事件就被执行了多次,今天遇到了这个问题,特此记录下,解决方案。

这个是由于onmouseover引起的,主要是因为ul里面包含了子元素,会造出鼠标移动到子元素,比如li上面也会触发ul的onmouseover事件,造成了混乱。解决办法:

1,如果是IE浏览器,用onmouseleave代替。

2,不管什么浏览器,下面这个方法都是牛逼的,不信,你试试。

  1. ?stateList.onmouseout?=?function(e){????
  2. ??if(?!e?)?e?=?window.event;????
  3. ??var?reltg?=?e.relatedTarget???e.relatedTarget?:?e.toElement;????
  4. ??while(?reltg?&&?reltg?!=?this?)?reltg?=?reltg.parentNode;????
  5. ??if(?reltg?!=?this?){????
  6. ??????//?è??é????ˉ??¥??–????onmouseleave??o??????"?¤"?????£???????
  7. ????stateList.style.display=‘none‘;??
  8. ?}??
  9. }??

原文在这里:http://blog.csdn.net/teresa502/article/details/6103458

时间: 2024-10-20 08:02:53

Onmouseover被调用多次的相关文章

JavaScript进阶知识点(慕课)

JavaScript能做什么? 1.增强页面动态效果(如:下拉菜单.图片轮播.信息滚动等) 2.实现页面与用户之间的实时.动态交互(如:用户注册.登陆验证等)  一. 数组 var myarray=new Array(); 二. 函数 function 函数名(){ 函数体://完成某一功能的代码段} ps:函数定义好后,是不能自动执行的,需要调用它,直接在需要的位置写函数名.函数的调用分两种情况:1.在<script>标签内调用 2.在HTML中调用,如通过点击按钮后调用定义好的函数.可以通

JavaScript进阶 - 第6章 事件响应,让网页交互

6-1什么是事件 JavaScript 创建动态页面.事件是可以被 JavaScript 侦测到的行为. 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件. 比如说,当用户单击按钮或者提交表单数据时,就发生一个鼠标单击(onclick)事件,需要浏览器做出处理,返回给用户一个结果. 主要事件表: 6-2鼠标单击事件( onclick ) onclick是鼠标单击事件,当在网页上单击鼠标时,就会发生该事件.同时onclick事件调用的程序块就会被执行,通常与按钮一起使

Unity3D脚本学习——运行时类

AssetBundle 类,继承自Object.AssetBundles让你通过WWW类流式加载额外的资源并在运行时实例化它们.AssetBundles通过BuildPipeline.BuildAssetBundle创建. 参见:WWW.assetBundle ,Loading Resources at Runtime ,BuildPipeline.BuildPlayer function Start () { var www = new WWW ("http://myserver/myBund

JS子元素oumouseover触发父元素onmouseout

JavaScript中,父元素包含子元素: 当父级设置onmouseover及onmouseout时,鼠标从父级移入子级,则触发父级的onmouseout后又触发onmouseover:从子级移入父级后再次触发父级的oumouseout后又触发onmouseover.而如果onmouseover内又应用了计时器便会存在较大的问题.下面针对此问题给出解决方案. 首先,在给出解决方案之前,必须先弄清楚几个对象及方法,分别如下: 1.事件对象 2.事件对象相关属性(只针对onmouseover及onm

事件的学习

1.鼠标单击事件( onclick ): onclick是鼠标单击事件,当在网页上单击鼠标时,就会发生该事件.同时onclick事件调用的程序块就会被执行,通常与按钮一起使用. <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>单击事件 <

JavaScript进阶(四)

现在说说什么是函数.函数的作用可以写一次代码,然后反复的重用这个代码.如:我们要完成多组数和的功能.var sum;sum=3+2;alert(sum); sum=7+8;alert(sum);...//不停重复两行代码 如果要实现8组数的和,就需要16行代码,实现的越多,代码行也就越多.所以我们可以把完成特定功能的代码块放到一个函数里面去,直接调用这个函数,就省去重复输入大量代码的麻烦.使用函数完成:function add2(a,b){ sum=a+b; alert(sum);}//只需要调

HTML第七天学习笔记

今天主要是学习如何使用JS,第一个就是先是使用JS输出"Hello world" 1 <!doctype html> 2 <html lang="en"> 3 <head> 4 <meta http-equiv = "content-type" content = "text/html; charset=UTF-8"> 5 <title>Document</ti

【JavaScript学习】-事件响应,让网页交互

什么是事件: JavaScript 创建动态页面.事件是可以被 JavaScript 侦测到的行为. 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件. 比如说,当用户单击按钮或者提交表单数据时,就发生一个鼠标单击(onclick)事件,需要浏览器做出处理,返回给用户一个结果. 主要事件表: 事件1:onclick 说明:onclick是鼠标单击事件,当在网页上单击鼠标时,就会发生该事件.同时onclick事件调用的程序块就会被执行,通常与按钮一起使用. 实例代码:

JS事件-让网页交互

什么是事件 JavaScript 创建动态页面.事件是可以被 JavaScript 侦测到的行为. 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件. 比如说,当用户单击按钮或者提交表单数据时,就发生一个鼠标单击(onclick)事件,需要浏览器做出处理,返回给用户一个结果. 主要事件表: 鼠标单击事件( onclick ) onclick是鼠标单击事件,当在网页上单击鼠标时,就会发生该事件.同时onclick事件调用的程序块就会被执行,通常与按钮一起使用. 比如,