Javascript 仅当鼠标在延迟1秒后悬停时显示图像预览

Javascript 仅当鼠标在延迟1秒后悬停时显示图像预览,javascript,jquery,mouseover,Javascript,Jquery,Mouseover,我将鼠标悬停在图像上时显示图像预览。现在,在显示预览图像之前,我会保持间隔。假设我将延迟设置为1秒,在这段时间内,如果我将鼠标拖出图像,它仍然会显示预览,因为它是在鼠标进入时触发的。如何解决这个问题 我只需要在1秒延迟后悬停时显示预览,如果图像中没有鼠标,则不需要显示预览?在鼠标悬停事件中将设置超时指定给变量,如下所示: var timer = setTimeout(function() { doSomething(); }, 1000); 然后在mouseout事件中清除它,这样当您将鼠标悬

我将鼠标悬停在图像上时显示图像预览。现在,在显示预览图像之前,我会保持间隔。假设我将延迟设置为1秒,在这段时间内,如果我将鼠标拖出图像,它仍然会显示预览,因为它是在鼠标进入时触发的。如何解决这个问题


我只需要在1秒延迟后悬停时显示预览,如果图像中没有鼠标,则不需要显示预览?

鼠标悬停事件中将设置超时指定给变量,如下所示:

var timer = setTimeout(function() { doSomething(); }, 1000);
然后在mouseout事件中清除它,这样当您将鼠标悬停在鼠标外时它不会显示:

clearTimeout(timer);

将setTimeout分配给鼠标悬停事件上的变量,如下所示:

var timer = setTimeout(function() { doSomething(); }, 1000);
然后在mouseout事件中清除它,这样当您将鼠标悬停在鼠标外时它不会显示:

clearTimeout(timer);

将setTimeout分配给鼠标悬停事件上的变量,如下所示:

var timer = setTimeout(function() { doSomething(); }, 1000);
然后在mouseout事件中清除它,这样当您将鼠标悬停在鼠标外时它不会显示:

clearTimeout(timer);

将setTimeout分配给鼠标悬停事件上的变量,如下所示:

var timer = setTimeout(function() { doSomething(); }, 1000);
然后在mouseout事件中清除它,这样当您将鼠标悬停在鼠标外时它不会显示:

clearTimeout(timer);
可以使用

演示:

可以使用

演示:

可以使用

演示:

可以使用


演示:

在jQuery1.9+上,您可以使用
delay/finish


在jQuery1.9+上,可以使用
delay/finish


在jQuery1.9+上,可以使用
delay/finish


在jQuery1.9+上,可以使用
delay/finish


使用计时器(
setTimeout()
)延迟显示请参阅使用计时器(
setTimeout()
)延迟显示请参阅使用计时器(
setTimeout()
)延迟显示请参阅使用计时器(
setTimeout()
)延迟显示请参阅抱歉,我使用jQuery<1.9。我一定会对此进行测试并发表评论。谢谢:)对不起,我使用jQuery<1.9。我一定会对此进行测试并发表评论。谢谢:)对不起,我使用jQuery<1.9。我一定会对此进行测试并发表评论。谢谢:)对不起,我使用jQuery<1.9。我一定会对此进行测试并发表评论。谢谢:)