在悬停时显示非嵌套div并在延迟后隐藏



我试图在div #1被鼠标悬停时显示div #2。如果div #2没有在短时间内(比如3秒)被鼠标悬停,那么它就会隐藏起来。我已经得到了代码半工作,但它的行为真的有bug。有时它根本不隐藏,我不知道如何在它再次隐藏之前调整时间。

<div id="1">When this is moused-over</div>
<div id="2">Show this and then hide again if not moused-over within 3 secs.</div>
http://jsfiddle.net/t0hj0r52/

EDIT:以防将来有人需要它。我已经修复了代码,并添加了一些代码,以便在鼠标移到div上后保持其打开状态。在此之前,如果你将鼠标移到div #1上,并且在导航时不小心将鼠标移到div #2上,那么div #2就会立即消失。

http://jsfiddle.net/t0hj0r52/2/

我认为代码是好的,你只是没有使用相同的div类,你试图隐藏,在你的代码中我看到一个$(菜单)。隐藏并且没有声明菜单变量。改变:

intVal=  setTimeout(function() { $('.email-div').hide(); }, 3000);

最新更新