die()函数用于移除匹配元素上绑定的一个或多个事件的事件处理函数。
die()函数主要用于解除由live()函数绑定的事件处理函数。
该函数属于jQuery对象(实例)。
语法
jQuery 1.3 新增该函数,从jQuery 1.7开始被标记为已过时,在jQuery 1.9中被移除。其主要有以下两种形式的用法:
用法一:jQuery 1.4.1 新增支持不指定任何参数。
jQueryObject.die( [ events [, handler ]] )
移除匹配当前选择器的元素的events事件绑定的事件处理函数handler。
用法二:jQuery 1.4.3 新增支持该用法。
jQueryObject.die( eventsMap )
用法一的变体,用于同时移除多种事件类型的多个事件处理函数。eventsMap是一个对象,每个属性对应用法一中的参数events,值对应用法一中的参数handler。
参数
参数 描述
events 可选/String类型一个或多个用空格分隔的事件类型和可选的命名空间,例如"click"、"focus click"、"keydown.myPlugin"。
handler 可选/Function类型指定的事件处理函数。
eventsMapObject类型一个Object对象,其每个属性对应事件类型和可选的命名空间(参数events),属性值对应绑定的事件处理函数(参数handler)。
namespace String类型指定的命名空间,例如".foo"、".myPlugin"。
如果省略参数handler,则移除匹配元素指定类型的事件上绑定的所有事件处理函数。
调用die()函数的当前jQuery对象的选择器与调用live()函数的jQuery对象的选择器必须一致。
如果省略了所有参数,则表示移除匹配元素上为任何元素绑定的任何事件类型的任何事件处理函数。
返回值
die()函数的返回值为jQuery类型,返回当前jQuery对象本身。
实际上,die()函数的参数全是筛选条件,只有匹配所有参数条件的事件处理函数都将被移除。参数越多,限定条件就越多,被移除的范围就越小。
示例&说明
请参考下面这段初始HTML代码:
CodePlayer
首先,我们为上述button和元素绑定事件,然后使用die()函数解除事件绑定,相应的代码如下: