jQuery中如何防止相同事件快速重复触发
发表于:2025-01-29 作者:千家信息网编辑
千家信息网最后更新 2025年01月29日,本篇内容主要讲解"jQuery中如何防止相同事件快速重复触发",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"jQuery中如何防止相同事件快速重复触发"吧!
千家信息网最后更新 2025年01月29日jQuery中如何防止相同事件快速重复触发
本篇内容主要讲解"jQuery中如何防止相同事件快速重复触发",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"jQuery中如何防止相同事件快速重复触发"吧!
重复触发就是防止用户重复点击提交数据了,我们一般都是点击之后没反应会再次点击了,这个不但要从用户体验上来做好,还在要js或php程序脚本上做好,让用户知道点击是己提交服务器正在处理,下面我就整理从脚本上来处理此重复触发的问题。
很多时候事件会被快速重复触发,比如 click,这样就会执行两次代码,造成很多后果。现在有比较多的解决方法,但几乎都有局限性,比如一个 Ajax 表单,如果防止用户一次点好多下可以在第一次点击的时候冻结提交按钮,直到允许再次点击的时候再放开。很多人都这样干,但在其他的情况就不是很有效了。
下面推荐一个不错的方法,首先丢一个函数进去。
var _timer = {}; function delay_till_last(id, fn, wait) { if (_timer[id]) { window.clearTimeout(_timer[id]); delete _timer[id]; } return _timer[id] = window.setTimeout(function() { fn(); delete _timer[id]; }, wait); }
使用方法
$dom.on('click', function() { delay_till_last('id', function() {//注意 id 是唯一的 //响应事件 }, 300); });
上面的代码可以让点击之后等待 300 毫秒,如果在 300 毫秒内又发生了这个事件则废除上一次点击,重新计时,反复如此,直到完全等待了 300 毫秒再响应事件。
这个函数很有用的,比如验证输入或者根据输入的邮箱实时拉去头像而不用等到必须失焦再拉取。
例子
按钮BUTTON类
a标签类
对于第一类情况,button有一个属性是disabled控制其是否可以点击,看代码
到此,相信大家对"jQuery中如何防止相同事件快速重复触发"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
事件
代码
再次
方法
用户
相同
时候
内容
函数
属性
情况
按钮
脚本
处理
学习
输入
不错
实用
更深
有效
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
普拓网络技术
网络安全山东张敬
石河子市网络安全应急指挥
网络安全法 态势感知
云计算数据库工程师
软件开发案例详细设计说明书
江苏网络技术服务价目表
宝山区加工软件开发项目信息
网络技术中的各种协议
政法网络安全重大意义
和平精英服务器分析
播放家庭教育与网络安全
江阴海航软件开发收购价
优质的数据库分库分表
微云删除图片会留云服务器吗
财务管理软件开发合同
qq魔碟打印服务器
gp数据库怎么查看磁盘空间
ea服务器什么时候能修
江苏分享云服务器安全虚拟主机
操作系统的上层软件开发
加强中小学生网络安全教育
东莞plc软件开发
系统软件开发管理制度
fifa22服务器水平
网易我的世界如何下载服务器
惠普服务器进入安全模式按键
郑州网络安全管理馆
网络安全公司人员最多有多少
软件开发行业财务预算表格