在jquery中用hover(function(){},function(){})比较好,因为处理鼠标进入离开事件的话,用mouseover 和 mouseout会有bug,用hover的话,参数,前一个是进入的时候触发的函数,后一个是离开的时候触发的函数。
你的这个需求就是进入的时候设置一个settimeout,如果没到200毫秒就退出了,则在第二个参数的函数里面设置一个clearTimeout就可以了。
$(function(){
$(target).mouseover(function(){
b=setTimeout(function(){代码...},200) ;
}).mouseout(function(){
clearTimeout(b)
}).
})
mouseover/mouseout 与clearTimeout setTimeout结合使用时,确实有一个BUG,看下面这篇文章,里面关于这个bug描述的很详细,有完整的在线实例演示,还有解决的方法:
clearTimeout与mouseover/mouseout 或mouseenter/mouseleave结合使用时无效或闪烁的解决方法
setInterval() 和 clearInterval() .
// js
var int;
function test(){
int setInterval("clock()",500) //循环调用函数
}
function test2(){
window.clearInterval(int) //取消调用
}
wish4sun 的说法如果是真的那这个算是一种解决办法了
我也在找这个答案 等下去测试