多次注册事件会导致一个事件被触发多次的解决方法


Posted in Javascript onAugust 12, 2013

一个JavaScript逻辑,会自动绑定函数到按钮的click事件,但是这段代码会反复注册事件。这样依赖onNext函数会在点击一次按钮的时候多次触发。

这是JQuery内部没有判断是否绑定多次,怀疑其内部用了数组保存事件函数,而且没有去重。

下面的代码预防了这个问题。解决方案很简单。

if (!this.hasPageBarEvents) { 
$(".pNext").on("click", this, this.onNext); 
this.hasPageBarEvents = true; 
}

以后用到JQuery要小心这个特性。
Javascript 相关文章推荐
JavaScript触发器详解
Mar 10 Javascript
从零开始学习jQuery (四) jQuery中操作元素的属性与样式
Feb 23 Javascript
js禁止小键盘输入数字功能代码
Aug 01 Javascript
JS 操作符整理[推荐收藏]
Nov 15 Javascript
如何使用jquery动态加载js,css文件实现代码
Apr 03 Javascript
jquery数组过滤筛选方法grep()简介
Jun 06 Javascript
微信小程序开发之toast等弹框提示使用教程
Jun 08 Javascript
ES6正则表达式扩展笔记
Jul 25 Javascript
JS实现图片放大镜插件详解
Nov 06 Javascript
React Native日期时间选择组件的示例代码
Apr 27 Javascript
webpack的pitching loader详解
Sep 23 Javascript
vue 实现上传组件
May 31 Vue.js
JS获取图片实际宽高及根据图片大小进行自适应
Aug 11 #Javascript
Javascript合并表格中具有相同内容单元格示例
Aug 11 #Javascript
js获取php变量的实现代码
Aug 10 #Javascript
如何使用Jquery获取Form表单中被选中的radio值
Aug 09 #Javascript
jquery对象和DOM对象的区别介绍
Aug 09 #Javascript
SOSO地图JS画出标注和中心点以html形式运行
Aug 09 #Javascript
javascript判断机器是否联网的2种方法
Aug 09 #Javascript
You might like
php PDO中文乱码解决办法
2009/07/20 PHP
PHP has encountered an Access Violation at 7C94BD02解决方法
2009/08/24 PHP
PHP初学者常见问题集合 修正版(21问答)
2010/03/23 PHP
PHP中用hash实现的数组
2011/07/17 PHP
php中count获取多维数组长度的方法
2014/11/03 PHP
php递归遍历多维数组的方法
2015/04/18 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
2017/09/17 PHP
js静态作用域的功能。
2006/12/25 Javascript
Domino中运用jQuery读取视图内容的方法
2009/10/21 Javascript
jquery ztree实现下拉树形框使用到了json数据
2014/05/14 Javascript
javascript实例分享---具有立体效果的图片特效
2014/06/08 Javascript
Javascript 读取操作Sql中的Xml字段
2014/10/09 Javascript
javascript中数组的定义及使用实例
2015/01/21 Javascript
iScroll中事件点击触发两次解决方案
2015/03/11 Javascript
js实现每日自动换一张图片的方法
2015/05/04 Javascript
jQuery+CSS3实现3D立方体旋转效果
2015/11/10 Javascript
基于JavaScript操作DOM常用的API小结
2015/12/01 Javascript
JQuery validate插件验证用户注册信息
2016/05/11 Javascript
js选择器全面解析
2016/06/27 Javascript
jquery与js实现全选功能的区别
2017/06/11 jQuery
如何抽象一个Vue公共组件
2017/10/17 Javascript
vue项目创建并引入饿了么elementUI组件的步骤
2019/04/11 Javascript
vue 使用鼠标滚动加载数据的例子
2019/10/31 Javascript
[01:02:17]2014 DOTA2华西杯精英邀请赛 5 24 DK VS VG
2014/05/26 DOTA
Python 除法小技巧
2008/09/06 Python
python中datetime模块中strftime/strptime函数的使用
2018/07/03 Python
python scatter散点图用循环分类法加图例
2019/03/19 Python
python批量创建指定名称的文件夹
2019/03/21 Python
python的range和linspace使用详解
2019/11/27 Python
HTML5 图片悬停放大的实现代码示例
2019/12/04 HTML / CSS
Wojas罗马尼亚网站:波兰皮鞋品牌
2018/11/01 全球购物
璀璨的珍珠、密钉和个性化珠宝:Lily & Roo
2021/01/21 全球购物
专升本个人自我评价
2013/12/22 职场文书
2015年调度员工作总结
2015/04/30 职场文书
复兴之路观后感3000字
2015/06/02 职场文书
党员公开承诺书(2016最新版)
2016/03/24 职场文书