原生-事件节流

1、节流逻辑分解

/* 
	设置在input输入时,间隔一定时间后再进行判断设置等内容,在间隔的时间内不再做任何处理	 
*/

2、代码实现

var text = document.querySelector("input") ,
	ids = 0 ;	
			//用来设置延时定时的初始值
text.addEventListener("input" , inputHandler) ;	
			//给文本框添加input事件

function inputHandler(e){
	if(ids) return ;	
			//如果ids为真(即ids===1)时,跳出
	ids = setTimeout(textHandler , 500 , this) ;
			//1、设置延时并创建执行函数textHandler
			//2、延时500ms执行
			//3、将this指向text参数传入函数中
			//4、给一个ids返回值来确定ids是0还是1,然后是0则执行函数
}

function textHandler(elem){
			//elem接收this
	console.log(elem.value) ;	
			//打印input输出的值
	clearTimeout(ids) ;	
			//取消延时定时器
	ids = 0 ;	
			//将ids设置0,再次输入时,进入input事件会再次执行延时器
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值