JS淘宝搜索框防抖策略

防抖的概念:防抖就是当事件被触发后,延迟n秒后再执行回调,如果在这n秒内事件又被触发,则重新计时。

防抖的好处:防抖的好处在于不会频繁执行回调,能保证回调最终只被执行一次,能提高浏览器性能。

拿淘宝输入框案例为例,不想每次按下键盘都去发送JSONP请求,想要输入完毕之后最后只发送一次请求。也就是我们常说的输入框防抖。

输入框防抖的核心步骤有三个:

(1)定义一个防抖动的timer

(2)定义一个防抖的函数

(3)在触发keyup事件时立即清空timer

 也就是当用户键盘弹起之后,这里相当于就是按下键盘后,先清楚定时器,然后开启一个定时器,这个定时器里面的代码是500ms之后才会执行,要是在这500ms之内用户又按下了键盘,那就会再清除定时器,再重新开启一个定时器,也就是如果快速按下三个字母,最后只会执行一次JSONP请求。

淘宝输入框防抖代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale&
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值