单事件绑定与解绑及对比
单事件绑定
jQuery
提供了bind()
方法完成事件绑定功能,具体语法如下:
$element.bind(type,data,callback);
-
type:
含有一个事件类型的字符串。 -
data:
作为event.data属性值传递给时间对象的额外数据对象。 -
callback
:绑定到每个匹配元素的事件上面的处理函数。$("h5.head").bind("click",function(){ var $content=$(this).next("div.content"); if($content.is(":visible")){ $content.hide(); }else{ $content.show(); } });
单事件解绑
jQuery
提供了unbind()
方法完成事件解绑定功能,具体语法如下:
$element.unbind(type[,data,callback]);
-
type:
删除含有一个事件类型的字符串。 -
data
:作为event.data
属性值传递给事件对象的额外数据对象。 -
callback:
绑定到每个匹配元素的时间上面的处理函数。$("h5.head").unbind("click");
事件绑定方法对比
jQuery
由于版本不同,完成事件绑定的方法不仅bind()
方法,还有以下几种方法:
-
one(type[,data,fn])
方法:为每一个匹配元素的特定事件绑定一个一次性的事件处理函数。 -
bind(type[,data,fn])
方法:为每一个匹配元素的特定事件绑定事件处理函数。 -
on(events,[selector],[data],fn)
方法为每个匹配元素绑定一个或多个事件的事件处理函数jQuery1.7
版本新增方法。 -
live(type[,data],fn)
方法:该方法可实现事件委托效果。jQuery1.7
版本该方法被移除。 -
delegate(selector[,type][,data],fn)
方法:该方法可实现事件委托效果。jQuery.16
版本新增方法。