细说 jQuery 事件篇(五) 事件的移除和重绑定
第一个事件处理程序我们添加附加信息,命名为 changeBgColor,第二个则命名为 justAlert。当点击 button 按钮后我们只移除 changeBgColor 相关的事件处理程序。
div {
width: 200px;
height: 200px;
border: 1px solid #ccc;
}
.blue {
background-color: blue;
}
jquery 代码:
移除处理程序假设有个 div 和 button,当我们点击 button 时即改变 div 的背景色,当如果我们点击 div 本身则移除 button 上的 click 事件处理程序。

这里为了区分两个不同的处理程序,特意将 addClass 和 alert 过程分开来写。
当直接点击 button 按钮时,div 背景色发生改变,同时弹出 alert 框。
此时,如果我们先点击 div 后,再点击 change 按钮,修改背景色失效,但如果我们再点击 default 按钮,修改背景色的事件处理程序被重新绑定到 change 按钮的 click 事件中。
事件重绑定我们添加一个 default 按钮,当点击 default 按钮后,所有的事件的处理程序又被重新绑定回来。为了能重复使用事件处理程序过程,我们需要使用一个匿名函数表达式来将其赋值给一个局部变量。
如果我们需要移除已经注册的事件处理程序,使某些处理程序失效。一种做法是在事件处理程序中使用条件语句进行判断,另一种更彻底的做法就是直接移除该处理程序。
如果我们提前点击 div 后,使用 .off() 方法移除 button 按钮上的 click 事件处理程序。 此时再点击 button 按钮,click 事件处理程序不再生效。
这里需要使用 .on() 方法。事件命名空间其实就是在绑定事件处理程序时加入一些附加信息,用来识别特定的处理程序。
<div></div> <button>changeBgColor</button> <button>default</button>
修改 jQuery 代码如下:
使用 on 方法修改上例中的 jQuery 代码如下: <div></div> <button>changeBgColor</button>样式:
移除特定的处理程序在上例中,使用 off 方法移除了 button 按钮 click 事件内的所有的处理程序,但如果我们只想移除改变背景色的处理程序,同时保留 alert 处理程序的话,就需用使用事件命名空间。
相关热词: jquery
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://v30.fanwenzhu.com/jq/jc/6528.shtml
相关文章
热门TAG
win10 ecshop 主机 阿里云 解决 配置 C# C++ 解析 SQL语句 命令 Go语言 方法 CSS3 HTML5 CSS win7 MSSQL 服务器配置 IIS7.5 IIS7 IIS6 IIS CentOS 7 Linux oracle数据库 oracle phpcms discuz discuz教程最新文章
-
PHP识别相片是否是颠倒的
时间:2020-12-28
-
python编程有哪些ide
时间:2020-12-28
-
python开发工程师是做什么
时间:2020-12-28
-
php构造函数的作用
时间:2020-12-28
-
php怎么跟数据库连接
时间:2020-12-28
-
php实现顺序线性表
时间:2020-12-28
-
Python多重继承中的菱形继
时间:2020-12-28
-
php中break的作用
时间:2020-12-28
热门文章
-
php中常用的正则表达式使用方法
时间:2020-12-25
-
asp与php区别是什么?
时间:2020-12-27
-
PHP识别相片是否是颠倒的,并且重新摆正
时间:2020-12-28
-
Yii授权之基于角色的存取控制 (RBAC)
时间:2020-12-23
-
php的一键安装包有哪些 php环境搭建
时间:2020-12-19
-
php实现对图片对称加解密(适用身份证加
时间:2020-12-25
-
php如何理解面向对象
时间:2020-12-28
-
超详细分析php docker的原理及作用
时间:2020-12-27
-
Python控制Excel实现自动化办公
时间:2020-12-23
-
session的作用是什么
时间:2020-12-25
