jQuery:带有计时器的动态元素fadeOut

时间:2013-03-27 01:12:04

标签: javascript jquery timer

我的网站上有一个基本的消息系统,它将消息排队/附加到一个浮动在页面顶部的div。每条消息都会在X秒后淡出,但是如果将鼠标悬停在该消息上,则会暂停它的淡出时间,然后在mouseleave上它应该恢复。

所以我试图附加一个div并附加一个计时器使其淡出,但是在鼠标上它将暂停淡出并在mouseleave上它将恢复它。还有一个关闭按钮,它会立即消失。

我已经尝试了delay()但是没有办法控制它,我似乎无法用setTimeout()来解决这个问题,因为我无法想出如何将计时器附加到div创造了。

1 个答案:

答案 0 :(得分:0)

您需要将计时器ID添加到全局范围内的对象,例如window.timers,并且在鼠标悬停时,您遍历所有活动计时器clearTimeout()并保存{{1} value - 这与DOM就绪时间戳和mouseover事件的时间戳有所不同。在mouseout上,您使用timeRemaining值而不是初始时间值再次设置所有计时器。