jQuery的事件模式(翻译jQuery in action第四章2)

422 撤销事件

一般情况下,一旦事件被绑定,他是永久存在,但是在一些交互情况下,需要撤销先前被绑定的事件,比如:一个网页中有多步操作,当用户操作完成的时候,网页需要只读模式,这样的话我们就必须撤销以前绑定的事件,jQuery提供的one函数可以执行一次,之后自动撤销,但是大多数的情况,我们需要自己控制是不是要撤销,jQuery为我们提供了一个和bind对应的unbind函数,来控制撤销已经绑定的事件。

unbind(eventType,listener)

unbind(event)

撤销元素的指定事件,如果没有参数,将撤销所有绑定的事件。

参数:

eventTypeString)可选,事件类型。

Listener Funtion)可选,要从每个匹配元素的事件中反绑定的事件处理函数。意思就是加了这个参数,就只撤销eventType中的该函数的操作,而不是把整个eventType事件全部撤销了。

Event Event)事件名称(这个在自定义事件的时候才有用)

返回值:jQuery数组对象

这个函数就是用来撤销选中元素的事件,通过参数来判断做那些操作,既可以删除所有绑定的事件,也可以删除指定的事件,同时还可以删除指定事件,指定的子操作,因为jQuery在绑定事件的时候是累加,而不是覆盖。

在具体做撤销的时候,我们应该注意这个问题,如果要撤销一个指定事件的子操作,在绑定的时候就不能用匿名函数,因为函数是一个引用,做了匿名函数的时候,在unbind的时候就找不到上次绑定的引用,这样就撤销不掉。

jQuerybindunbind已经处理了浏览器的兼容,我们写程序的时候并不需要考虑是那种浏览器下执行,是不是很简单了,在jQuery对象中,jQuery定义了自己的event属性,这个是属性是自定义的,和浏览器的event是两个概念,在event属性中做了浏览器兼容处理,到这里jQuery的事件模式就讲完了,那些东西还需要我们开发人员处理?我们讲后边的应用实例就会明白。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值