jQuery实现鼠标经过事件的延时处理效果


Posted in Javascript onAugust 20, 2020

jQuery鼠标经过(hover)事件的延时处理,具体JS代码如下:

(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);

hoverDelay方法共四个参数,表示意思如下:

  • hoverDuring        鼠标经过的延时时间
  • outDuring            鼠标移出的延时时间
  • hoverEvent          鼠标经过执行的方法
  • outEvent              鼠标移出执行的方法

该函数的目的在于让鼠标经过事件和延时分离的出来,延时以及延迟的清除都已经由此方法解决了。您所要做的,就是设定延时的时间大小,以及相应的鼠标经过或是移除事件即可。举个简单的例子吧,如下代码:

$("#test").hoverDelay({ 
 hoverDuring: 1000, 
 outDuring: 1000, 
 hoverEvent: function(){ 
  $("#tm").show(); 
 }, 
 outEvent: function(){ 
  $("#tm").hide(); 
 } 
});

以下为更简洁的一个案例

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

表示的含义是id为test的元素在鼠标经过后200毫秒后弹出含有“经过 我!”文字字样的弹出框。

以上就是关于jQuery鼠标经过(hover)事件的延时处理全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
JS实现打开本地文件或文件夹
Mar 09 Javascript
jquery 学习之二 属性相关
Nov 23 Javascript
javascript禁用键盘功能键让右击及其他键无效
Oct 09 Javascript
javascript中call,apply,bind的用法对比分析
Feb 12 Javascript
jQuery中 prop() attr()使用详解
May 19 Javascript
javascript中setInterval的用法
Jul 19 Javascript
原生JavaScript实现动态省市县三级联动下拉框菜单实例代码
Feb 03 Javascript
微信小程序 时间格式化(util.formatTime(new Date))详解
Nov 16 Javascript
vue使用v-if v-show页面闪烁,div闪现的解决方法
Oct 12 Javascript
微信小程序Echarts图表组件使用方法详解
Jun 25 Javascript
基于Layui自定义模块的使用方法详解
Sep 14 Javascript
Layui实现数据表格默认全部显示(不要分页)
Oct 26 Javascript
使用jquery动态加载Js文件和Css文件
Oct 24 #Javascript
JavaScript中数组的合并以及排序实现示例
Oct 24 #Javascript
使用javaScript动态加载Js文件和Css文件
Oct 24 #Javascript
js判断日期时间有效性的方法
Oct 24 #Javascript
JavaScript中日期的相关操作方法总结
Oct 24 #Javascript
JavaScript中Date对象的常用方法示例
Oct 24 #Javascript
js实现表单多按钮提交action的处理方法
Oct 24 #Javascript
You might like
PHP 出现乱码和Sessions验证问题的解决方法!
2008/12/06 PHP
thinkPHP统计排行与分页显示功能示例
2016/12/02 PHP
在Laravel 中实现是否关注的示例
2019/10/22 PHP
W3C Group的JavaScript1.8 新特性介绍
2009/05/19 Javascript
jQuery Flash/MP3/Video多媒体插件
2010/01/18 Javascript
javascript 循环读取JSON数据的代码
2010/07/17 Javascript
学习javascript,实现插入排序实现代码
2011/07/31 Javascript
JS截取与分割字符串常用技巧总结
2015/11/10 Javascript
jQuery实现简单的抽奖游戏
2017/05/05 jQuery
Node.js中的cluster模块深入解读
2018/06/11 Javascript
python打开文件并获取文件相关属性的方法
2015/04/23 Python
python通过get,post方式发送http请求和接收http响应的方法
2015/05/26 Python
python音频处理用到的操作的示例代码
2017/10/27 Python
对python中array.sum(axis=?)的用法介绍
2018/06/28 Python
Python3实现对列表按元组指定列进行排序的方法分析
2018/12/22 Python
python中return的返回和执行实例
2019/12/24 Python
python实现堆排序的实例讲解
2020/02/21 Python
解决jupyter notebook打不开无反应 浏览器未启动的问题
2020/04/10 Python
Python如何在单元测试中给对象打补丁
2020/08/03 Python
HTML 5.1来了 9月份正式发布 更新内容预览
2016/04/26 HTML / CSS
ProBikeKit英国:在线公路自行车之家
2017/02/10 全球购物
英国健身仓库:Bodybuilding Warehouse
2019/03/06 全球购物
罗马尼亚购物网站:Vivantis.ro
2019/07/20 全球购物
大学生学业生涯规划
2014/01/05 职场文书
管理信息系学生的自我评价
2014/01/11 职场文书
精彩自我鉴定
2014/01/16 职场文书
认识深刻的检讨书
2014/02/16 职场文书
销售顾问岗位职责
2014/02/25 职场文书
2014年小学植树节活动方案
2014/03/02 职场文书
学校教师安全责任书
2014/07/23 职场文书
购房意向书
2014/08/30 职场文书
入党积极分子十八届四中全会思想汇报
2014/10/23 职场文书
党委工作总结2015
2015/04/27 职场文书
2015年教务处干事工作总结
2015/07/22 职场文书
安全学习心得体会范文
2016/01/18 职场文书
MySQL 如何分析查询性能
2021/05/12 MySQL