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


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 CSS修改学习第五章 给“上传”添加样式
Feb 19 Javascript
js模拟点击事件实现代码
Nov 06 Javascript
Javascript基础知识(一)核心基础语法与事件模型
Sep 29 Javascript
js中confirm实现执行操作前弹出确认框的方法
Nov 01 Javascript
详解AngularJs中$resource和restfu服务端数据交互
Sep 21 Javascript
ionic cordova一次上传多张图片(类似input file提交表单)的实现方法
Dec 16 Javascript
微信小程序 css使用技巧总结
Jan 09 Javascript
利用jQuery实现一个简单的表格上下翻页效果
Mar 14 Javascript
Vue自定义事件(详解)
Aug 19 Javascript
vue项目实战总结篇
Feb 11 Javascript
Js面试算法详解
Apr 08 Javascript
JS实现简易贪吃蛇游戏
Aug 24 Javascript
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操作mysql执行数据库查询的一些常用操作汇总
2013/06/24 PHP
php过滤html标记属性类用法实例
2014/09/23 PHP
php字符串截取函数用法分析
2014/11/25 PHP
PHP一个简单的无需刷新爬虫
2019/01/05 PHP
Jquery 动态添加按钮实现代码
2010/05/06 Javascript
让浏览器非阻塞加载javascript的几种方法小结
2011/04/25 Javascript
jQuery中fadeIn、fadeOut、fadeTo的使用方法(图片显示与隐藏)
2013/05/08 Javascript
JQuery实现表格动态增加行并对新行添加事件
2014/07/30 Javascript
node.js中的fs.truncateSync方法使用说明
2014/12/15 Javascript
AngularJS中的过滤器filter用法完全解析
2016/04/22 Javascript
如何解决jQuery EasyUI 已打开Tab重新加载问题
2016/12/19 Javascript
Angular开发者指南之入门介绍
2017/03/05 Javascript
jQuery获取table表中的td标签(实例讲解)
2017/07/28 jQuery
jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的基本用法
2017/10/20 jQuery
微信小程序分享功能之按钮button 边框隐藏和点击隐藏
2018/06/14 Javascript
JS中验证整数和小数的正则表达式
2018/10/08 Javascript
微信小程序下拉框搜索功能的实现方法
2019/07/31 Javascript
Javascript执行流程细节原理解析
2020/05/14 Javascript
Nodejs 数组的队列以及forEach的应用详解
2021/02/25 NodeJs
Python实现的一个自动售饮料程序代码分享
2014/08/25 Python
Python pyinotify模块实现对文档的实时监控功能方法
2018/10/13 Python
在PyCharm下使用 ipython 交互式编程的方法
2019/01/17 Python
关于pytorch中网络loss传播和参数更新的理解
2019/08/20 Python
Django 请求Request的具体使用方法
2019/11/11 Python
Python GUI库Tkiner使用方法代码示例
2020/11/27 Python
HTML5中的网络存储实现方式
2020/04/28 HTML / CSS
自我鉴定三原则
2014/01/13 职场文书
小学生元旦广播稿
2014/02/21 职场文书
小学师德师风演讲稿
2014/09/02 职场文书
县委常委班子专题民主生活会查摆问题及整改措施
2014/09/27 职场文书
甲乙双方合作协议书
2014/10/13 职场文书
2014年团委工作总结
2014/11/13 职场文书
2014年服务行业工作总结
2014/11/18 职场文书
实施意见格式范本
2015/06/05 职场文书
python爬虫--selenium模块
2021/03/31 Python
MySQL中JOIN连接的基本用法实例
2022/06/05 MySQL