javaScript防抖
Posted 野生java研究僧
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javaScript防抖相关的知识,希望对你有一定的参考价值。
文章目录
javascript防抖技术
什么是防抖?
所谓的防抖,就是防止你手抖,多次点击或者,多次触发事件,比如说你购买东西,网卡,你一直点击付款按钮,其实在指定时间内只需要执行一次即可。或者在做联想搜索的时候也是这样,不要输入框的值改变就去请求接口,而是等用户感觉输入完,然后再去请求接口,这样能减少和后端交互。
<body>
<button id="copyBtn">复制</button>
<script>
/**
* 防抖函数
* @param Object func 需要执行的业务函数
* @param Object delay 间隔时间
* @param Object option 需要传递的参数
*/
function debounce(func, delay, option)
let timer;
return function()
let _this = this;
clearTimeout(timer);
timer = setTimeout(function()
func.call(_this, option)
, delay)
/**
*给按钮绑定一个事件,并且多次在一秒内点击都算一次,能携带参数
* @param Object obj
*/
function task(obj)
console.log("this:", this);
console.log(obj)
// 绑定输入
let copyBtn = document.getElementById('copyBtn');
copyBtn.addEventListener('click', debounce(task, 1000,
name: 'admin'
));
</script>
</body>
以上是关于javaScript防抖的主要内容,如果未能解决你的问题,请参考以下文章