新手上路

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

在js里面,当我们对一个html对象绑定了mouseover和mouseout事件时,会自动对其子对象绑定这两个事件,而有时候这个机制会给我们的实现带来不便,我们只希望在这个html对象上面实现mouseover和mouseout的绑定。

我解决的方法是:在当mouseout的时候,设定一个延迟,例如1秒,然后在mouseover事件中对这个延迟进行清除,不让它调用应该执行的方法。

原因很简单,当鼠标在html对象中移动的时候,它是从一个子对象mouseout然后又mouseover了另一个子对象。

代码如下:

var timeout;

mouseout方法:

timeout=setTimeout("执行的语句",100);

mouseover方法:

window.clearTimeout(timeout);

timeout=null;

posted on 2011-01-07 09:48  冬夜听雨  阅读(1472)  评论(0)    收藏  举报