Vue的click事件防抖和节流处理详解


Posted in Javascript onNovember 13, 2019

函数防抖

定义:多次触发事件后,事件处理函数只执行一次,并且是在触发操作结束时执行。

在vue中对click添加防抖处理

const on = Vue.prototype.$on
// 防抖处理
Vue.prototype.$on = function (event, func) {
  let timer
  let newFunc = func
  if (event === 'click') {
    newFunc = function () {
      clearTimeout(timer)
      timer = setTimeout(function () {
        func.apply(this, arguments)
      }, 500)
    }
  }
  on.call(this, event, newFunc)
}

函数节流

定义:触发函数事件后,短时间间隔内无法连续调用,只有上一次函数执行后,过了规定的时间间隔,才能进行下一次的函数调用。

在vue中对click添加节流处理

const on = Vue.prototype.$on
 
// 节流
Vue.prototype.$on = function (event, func) {
  let previous = 0
  let newFunc = func
  if (event === 'click') {
    newFunc = function () {
      const now = new Date().getTime()
      if (previous + 1000 <= now) {
        func.apply(this, arguments)
        previous = now
      }
    }
  }
  on.call(this, event, newFunc)
}

以上这篇Vue的click事件防抖和节流处理详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
我见过最全的个人js加解密功能页面
Dec 12 Javascript
JavaScript 在网页上单击鼠标的地方显示层及关闭层
Dec 30 Javascript
如何使用json在前后台进行数据传输实例介绍
Apr 11 Javascript
封装了一个支持匿名函数的Javascript事件监听器
Jun 05 Javascript
Bootstrap 实现查询的完美方法
Oct 26 Javascript
vue.js单页面应用实例的简单实现
Apr 10 Javascript
Vue Socket.io源码解读
Feb 07 Javascript
在vue组件中使用axios的方法
Mar 16 Javascript
对vue里函数的调用顺序介绍
Mar 17 Javascript
JavaScript模拟实现自由落体效果
Aug 28 Javascript
Node绑定全局TraceID的实现方法
Nov 14 Javascript
jQuery实现轮播图效果demo
Jan 11 jQuery
vue表单数据交互提交演示教程
Nov 13 #Javascript
解决vuex数据异步造成初始化的时候没值报错问题
Nov 13 #Javascript
前端vue-cli项目中使用img图片和background背景图的几种方法
Nov 13 #Javascript
基于vue-cli3和element实现登陆页面
Nov 13 #Javascript
vue data引入本地图片的两种方式小结
Nov 13 #Javascript
vue中的 $slot 获取插槽的节点实例
Nov 12 #Javascript
解决vue v-for src 图片路径问题 404
Nov 12 #Javascript
You might like
二次元帅气男生排行榜,只想悄悄收藏系列
2020/03/04 日漫
php表单提交问题的解决方法
2011/04/12 PHP
php+ajax无刷新分页实例详解
2015/12/07 PHP
fix-ie5.js扩展在IE5下不能使用的几个方法
2007/08/20 Javascript
js 表格隔行颜色
2009/12/02 Javascript
jquery 关键字“拖曳搜索”之“拖曳”以及 图片“提示自适应放大”效果 的实现
2010/04/18 Javascript
Js组件的一些写法
2010/09/10 Javascript
深入理解JavaScript 闭包究竟是什么
2013/04/12 Javascript
利用JQuery制作符合Web标准的QQ弹出消息
2014/01/14 Javascript
JS特效实现图片自动播放并可控的效果
2015/07/31 Javascript
JavaScript Math 对象常用方法总结
2016/04/28 Javascript
Angular懒加载机制刷新后无法回退的快速解决方法
2016/08/30 Javascript
多种方式实现js图片预览
2016/12/12 Javascript
微信小程序 利用css实现遮罩效果实例详解
2017/01/21 Javascript
vue3.0 CLI - 2.5 - 了解组件的三维
2018/09/14 Javascript
怎样在vue项目下添加ESLint的方法
2019/05/16 Javascript
Vue看了就会的8个小技巧
2021/01/21 Vue.js
[01:07:21]NAVI vs VG Supermajor 败者组 BO3 第二场 6.5
2018/06/06 DOTA
使用python实现rsa算法代码
2016/02/17 Python
python+numpy+matplotalib实现梯度下降法
2018/08/31 Python
python如何实现一个刷网页小程序
2018/11/27 Python
Python使用pyshp库读取shapefile信息的方法
2018/12/29 Python
Python数据可视化教程之Matplotlib实现各种图表实例
2019/01/13 Python
Vince官网:全球著名设计师品牌,休闲而优雅的服饰
2017/01/15 全球购物
京东港澳售:京东直邮港澳台
2018/01/31 全球购物
商务助理岗位职责
2013/11/13 职场文书
运动会宣传口号
2014/06/09 职场文书
勿忘国耻9.18演讲稿(经典篇)
2014/09/14 职场文书
工商局局长个人对照检查材料思想汇报
2014/09/23 职场文书
法院授权委托书格式
2014/09/28 职场文书
劳动仲裁撤诉申请书
2015/05/18 职场文书
撤诉申请书法院范本
2015/05/18 职场文书
魂断蓝桥观后感
2015/06/10 职场文书
暗恋桃花源观后感
2015/06/12 职场文书
学雷锋主题班会教案
2015/08/13 职场文书
opencv-python图像配准(匹配和叠加)的实现
2021/06/23 Python