jQuery – 鼠标经过(hover)事件的延时处理

Posted 侧耳倾听的世界

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery – 鼠标经过(hover)事件的延时处理相关的知识,希望对你有一定的参考价值。

(function($){
    $.fn.hoverDelay = function(options){
        var defaults = {
            hoverDuring: 200,
            outDuring: 200,
            hoverEvent: function(){
                $.noop();
            },
            outEvent: function(){
                $.noop();    
            }
        };
        var sets = $.extend(defaults,options || {});
        var hoverTimer, outTimer;
        return $(this).each(function(){
            $(this).hover(function(){
                clearTimeout(outTimer);
                hoverTimer = setTimeout(sets.hoverEvent, sets.hoverDuring);
            },function(){
                clearTimeout(hoverTimer);
                outTimer = setTimeout(sets.outEvent, sets.outDuring);
            });    
        });
    }      
})(jQuery);

实现

$("#test").hoverDelay({
    hoverEvent: function(){
        alert("经过我!");
    }
});

  

以上是关于jQuery – 鼠标经过(hover)事件的延时处理的主要内容,如果未能解决你的问题,请参考以下文章

jQuery的hover事件,鼠标经过能显示子菜单,移出就不能隐藏子菜单。代码如下

js中hover事件时候的BUG以及解决方法

jquery,怎样可以让鼠标停留在某一区域不少于1秒才会执行代码

jquery鼠标悬停事件hover()

jQuery中hover事件和click事件嵌套问题

用jquery怎么延时加载ajax?