jQuery事件多次绑定与解绑问题实例分析


Posted in jQuery onFebruary 19, 2019

本文实例分析了jQuery事件多次绑定与解绑问题。分享给大家供大家参考,具体如下:

jQuery事件绑定很常见,相信大家经常会用到clickfocusblur等事件,但是如果对控件的某个事件绑定多个方法会是怎样的结果呢,覆盖、累加、或其他效果?今天我就来验证一下这个疑问并说说如何解绑。

一、jQuery事件多次绑定

<head>
  <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
  <script type="text/javascript">
    $(document).ready(function () {
      //第二次绑定
      $("#btnAdd").click(function () {
        alert("bind click1");
      });
      //第三次绑定
      $("#btnAdd").on("click", function () {
        alert("bind click2");
      });
      //第四次绑定
      $("#btnAdd").bind("click", function () {
        alert("bind click3");
      });
    });
    function add1() {
      alert("add1()");
    }
  </script>
</head>
<body>
  <h2>UserController->Index</h2>
  <!--第一次绑定-->
  <input type="button" id="btnAdd" name="btnAdd" value="Add" onclick="add1()" />
</body>

验证结果:对控件的某个事件进行多次绑定效果会叠加,截图如下:

jQuery事件多次绑定与解绑问题实例分析

二、jQuery事件解绑

既然能绑定事件,那应该也能对事件解绑,下面展示解绑的方法:

<head>
  <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
  <script type="text/javascript">
    $(document).ready(function () {
      $("#btnAdd").click(function () {
        alert("bind click1");
      });
      $("#btnAdd").on("click", add2);
      $("#btnAdd").bind("click", add3);
    });
    function add1() {
      alert("add1()");
    }
    function add2() {
      alert("bind click2");
    }
    function add3() {
      alert("bind click3");
    }
    function cancelBind() {
      //不指定方法名则解绑click事件对应的所有方法,标签内onclick设置的方法仍会执行
      //$("#btnAdd").off("click");
      //$("#btnAdd").unbind("click");
      //解绑click事件对应的add2方法
      $("#btnAdd").off("click", add2);
      //$("#btnAdd").unbind("click", add3);
    }
  </script>
</head>
<body>
  <h2>UserController->CancelBind</h2>
  <input type="button" id="btnAdd" name="btnAdd" value="Add" onclick="add1()" />
  <input type="button" id="btnCancelBind" name="btnCancelBind" value="CancelBind" onclick="cancelBind()" />
</body>

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery遍历节点方法汇总(推荐)
May 13 jQuery
jQuery实现动态删除LI的方法
May 30 jQuery
jQuery+HTML5实现WebGL高性能烟花绽放动画效果【附demo源码下载】
Aug 18 jQuery
jquery一键控制checkbox全选、反选或全不选
Oct 16 jQuery
基于jquery.page.js实现分页效果
Jan 01 jQuery
jQuery中的类名选择器(.class)用法简单示例
May 14 jQuery
jQuery事件绑定和解绑、事件冒泡与阻止事件冒泡及弹出应用示例
May 13 jQuery
jQuery实现图片下载代码
Jul 18 jQuery
jquery 回调操作实例分析【回调成功与回调失败的情况】
Sep 27 jQuery
jquery实现直播视频弹幕效果
Feb 25 jQuery
jQuery 动画与停止动画效果实例详解
May 19 jQuery
jQuery cookie的公共方法封装和使用示例
Jun 01 jQuery
JS/jQuery实现简单的开关灯效果【案例】
Feb 19 #jQuery
jQuery AJAX与jQuery事件的分析讲解
Feb 18 #jQuery
jQuery实现的卷帘门滑入滑出效果【案例】
Feb 18 #jQuery
jQuery插件实现非常实用的tab栏切换功能【案例】
Feb 18 #jQuery
jQuery实现的五星点评功能【案例】
Feb 18 #jQuery
jQuery实现的隔行变色功能【案例】
Feb 18 #jQuery
jQuery实现ajax的嵌套请求案例分析
Feb 16 #jQuery
You might like
一个图形显示IP的PHP程序代码
2007/10/19 PHP
Symfony2创建基于域名的路由相关示例
2016/11/14 PHP
PHP中如何使用Redis接管文件存储Session详解
2018/11/28 PHP
PHP代码加密的方法总结
2020/03/13 PHP
自制轻量级仿jQuery.boxy对话框插件代码
2010/10/26 Javascript
JQuery 弹出框定位实现方法
2010/12/02 Javascript
jQuery中的val()示例应用
2014/02/26 Javascript
node.js中的path.isAbsolute方法使用说明
2014/12/08 Javascript
JavaScript检测并限制复选框选中个数的方法
2015/08/12 Javascript
原生javascript实现的一个简单动画效果
2016/03/30 Javascript
bootstrap滚动监控器使用方法解析
2017/01/13 Javascript
JS库之Particles.js中文开发手册及参数详解
2017/09/13 Javascript
Angularjs 手写日历的实现代码(不用插件)
2017/10/18 Javascript
微信小程序实现点击按钮修改文字大小功能【附demo源码下载】
2017/12/06 Javascript
jQuery NProgress.js加载进度插件的简单使用方法
2018/01/31 jQuery
angular 服务的单例模式(依赖注入模式下)详解
2018/10/22 Javascript
vue-cli2.0转3.0之项目搭建的详细步骤
2018/12/11 Javascript
详解mpvue实现对苹果X安全区域的适配
2019/07/31 Javascript
解决layui table表单提示数据接口请求异常的问题
2019/09/24 Javascript
three.js显示中文字体与tween应用详析
2021/01/04 Javascript
python文件操作相关知识点总结整理
2016/02/22 Python
python3 判断列表是一个空列表的方法
2018/05/04 Python
Python中collections模块的基本使用教程
2018/12/07 Python
详解Python基础random模块随机数的生成
2019/03/23 Python
python编写猜数字小游戏
2019/10/06 Python
美国购车网站:TrueCar
2016/10/19 全球购物
医疗保健专业人士购物网站:Scrubs & Beyond
2017/02/08 全球购物
洛杉矶生活休闲而精致的基础品牌:Mika Jaymes
2018/01/07 全球购物
Sephora丝芙兰印尼官方网站:购买化妆品和护肤品
2018/07/02 全球购物
Android面试题及答案
2015/09/04 面试题
自荐信要包含哪些内容
2013/11/06 职场文书
应届大学生求职信
2013/12/01 职场文书
电子装配专业毕业生求职信
2014/04/23 职场文书
工厂搬迁方案
2014/05/11 职场文书
电子专业求职信
2014/06/19 职场文书
小兵张嘎观后感300字
2015/06/03 职场文书