如果用户光标在我的元素上几秒钟,则调用鼠标悬停

时间:2013-07-10 07:21:49

标签: jquery events

我有一个元素,我想在鼠标悬停事件上做点什么! 我试过这个:

$("#myElement").hover(
function () { // in 
    ...
},
function () { // out
    ...
});

但它不应该立即运行。 几秒钟后我想要火灾悬停事件。 我该如何实现呢?

1 个答案:

答案 0 :(得分:5)

您将等待setTimeout()

在发布此问题之前,您应该再搜索一下。

(function() {

    var time = 1000,
        timer;

    function handlerIn() {
        clearTimeout(timer);
    }
    function handlerOut() {
        timer = setTimeout(function() {
            $('.target').fadeOut(3000);
        }, time);
    }

    $("#myElement").hover(handlerIn, handlerOut);

}());

这里发生的事情很简单,在hoverin启动时设置为1000的计时器,但当你将鼠标悬停时取消clearTimeout()你刚设置的计时器