JavaScript防抖案例讲解
原理
防抖的原理是:你尽管触发事件,但是我一定要在事件触发n秒之后才执行,如果你在一个事件触发的n秒内又触发了这个事件,那我就以新的事件的时间为准,n秒后再执行。总之,就是要等到你触发完事件n秒内不再触发事件,我才执行。
案例
debounce - 锐客网 * {margin: 0; padding: 0; }#container {width: 100%; height: 200px; line-height: 200px; text-align: center; color: #fff; background-color: #444; font-size: 30px; }
function getUserAction(e) {console.log(this); console.log(e); container.innerHTML = count++; }; function debounce(func, wait) {var timeout; return function () {clearTimeout(timeout); timeout = setTimeout(() => {func.apply(this, arguments); // 解决this和事件对象event}, wait); }}container.onmousemove = debounce(getUserAction, 1000);
【JavaScript防抖案例讲解】到此这篇关于JavaScript防抖案例讲解的文章就介绍到这了,更多相关JavaScript防抖内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- 事件代理
- 数组常用方法一
- 翼光家长沙龙复盘
- 小程序有哪些低成本获客手段——案例解析
- JavaScript|vue 基于axios封装request接口请求——request.js文件
- 【文魁大脑实用记忆第五期】贤派张丽琼第8次案例一地理记忆有汽泡图
- JavaScript|JavaScript: BOM对象 和 DOM 对象的增删改查
- JavaScript|JavaScript — 初识数组、数组字面量和方法、forEach、数组的遍历
- JavaScript|JavaScript — call()和apply()、Date对象、Math、包装类、字符串的方法
- JavaScript|JavaScript之DOM增删改查(重点)