html5输入实时检测及延时优化的方法是什么
发表于:2024-11-17 作者:千家信息网编辑
千家信息网最后更新 2024年11月17日,今天小编给大家分享一下html5输入实时检测及延时优化的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获
千家信息网最后更新 2024年11月17日html5输入实时检测及延时优化的方法是什么
今天小编给大家分享一下html5输入实时检测及延时优化的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
有个项目是,这么个情况,输入框,实时监测输入,触发请求。
第一想法是input
上的onchange()
方法,试了一下,不好用,是值等更改确认了,才会触发,不即时。
上网查了一下,
$("#fix").on('input propertychange', function(event){});
方法的确可以用,但是实时更改。发送的频率有点快啊。
赶紧加个定时器setTimeout
.
$("#fix").on('input propertychange', function(event){ setTimeout(function(){ //延迟0.5s执行 console.log($("#fix").val()) },500);});
问题又来了,定时器是异步,虽然延迟,但是还会执行,没啥改变。
后来又想到解绑unbind
,bind
,但是解绑的时间里获取不到键盘输入的事件。
当时第一想法是,触发事件-删除定时器-添加定时器-执行函数。发现还是不好,定时器删不掉,干脆就不执行了。
最后上网查了一下,发现一种新方法。
时间戳法。
原理就是,每次输入修改全局变量,时间戳,延迟0.5s监测 新的时间戳和和绑定的时间戳相等,就进行下一步。
------html-----------script-----var last;$("#fix").on('input propertychange', function(event){ //"#fix为你的输入框 last = event.timeStamp; //利用event的timeStamp来标记时间,这样每次事件都会修改last的值,注意last必需为全局变量 setTimeout(function(){ //设时延迟0.5s执行 if(last-event.timeStamp==0) //如果时间差为0(也就是你停止输入0.5s之内都没有其它的keyup事件发生)则做你想要做的事 { console.log($("#fix").val()) } },500);});
以上就是"html5输入实时检测及延时优化的方法是什么"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
输入
时间
方法
定时器
实时
事件
知识
篇文章
延迟
检测
不好
全局
内容
变量
就是
想法
监测
不同
很大
也就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
SQL提供了哪些系统数据库
我游网网络技术有郑州限公
南瑞反向隔离接网络安全
安徽电商系统软件开发
php数据库练习心得
网络安全提示9个小贴士
东数西算 网络安全
soundgrid服务器配置
网络安全工程师_
网络安全峰会心得体会
法环pc服务器维护
zstack4镜像服务器配置
12333身份证认证服务器异常
服务器开着80端口就会被入侵吗
深圳藕荷网络技术有限公司
linux 跨服务器拷贝
学校网络安全演练2021
数据库 短信猫
长沙市芙蓉区融享互联网科技
大众电器匹配服务器关闭
信息与网络安全管理实践
宝山区网络技术转让多少钱
法环服务器老掉
崩坏3steam服务器排名
汇和乾元软件开发
网络安全动员培训
科达综合视频管理服务器
怀柔数据库测试
仙境传说私服与服务器连接失败
一般一个办公室有几台服务器