码迷,mamicode.com
首页 > Web开发 > 详细

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

时间:2016-04-01 10:20:47      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:鼠标事件 延时

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<script src="jquery-1.8.1.js"></script>
<title>无标题文档</title>
</head>
<style>
#test{
    width:20px;
    height:20px;
    border:1px solid red;
    }
</style>
<body>
 <div id="test">
 </div>
  <div id="tm" style="display:none">a</div>
</body>
<script type="text/javascript">
    (function($){
        $.fn.hoverDelay = function(options){
            var defaults = {
                hoverDuring: 600,
                outDuring: 600,
                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({
        hoverDuring: 600,
        outDuring: 600,
        hoverEvent: function(){
            $("#tm").show();
        },
        outEvent: function(){
            $("#tm").hide();
        }
    });  
</script>
</html>

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

标签:鼠标事件 延时

原文地址:http://warmdoll.blog.51cto.com/10881334/1759074

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!