首页 > Web开发 > 详细

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

时间:2016-04-01 10:19:09      阅读:139      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!