jq的 bind(),
为被选元素添加一个或多个事件处理程序,并规定事件发生时的运行函数。
$(selector).bind(event,data,function)
$("button").bind("mouseleave mouseenter click",function(){
$("p").slideToggle().css('backgroundColor','red');
});
不同事件执行同样的function
替代写法
$(selector).bind({event:function, event:function, ...})
$("button").bind({
click:function(){$("p").slideToggle();},
mouseover:function(){$("body").css("background-color","red");},
mouseout:function(){$("body").css("background-color","#FFFFFF");}
});
不同的事件执行对应的function
jq的live(),
1.7中废弃, 1.9中移除,用on代替
live() 方法为被选元素附加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。
通过 live() 方法附加的事件处理程序适用于匹配选择器的当前及未来的元素(比如由脚本创建的新元素)。
$(selector).live(event,data,function)
jq delegate(),
delegate() 方法为指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。
使用 delegate() 方法的事件处理程序适用于当前或未来的元素(比如由脚本创建的新元素)。
jq on()
自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。该方法给 API 带来很多便利,我们推荐使用该方法,它简化了 jQuery 代码库。
注意:使用 on() 方法添加的事件处理程序适用于当前及未来的元素(比如由脚本创建的新元素)。
提示:如需移除事件处理程序,请使用 off() 方法。
提示:如需添加只运行一次的事件然后移除,请使用 one() 方法。
on是bind的替代写法,
解释都基本类似但有实质不同(别人的博客):
https://www.jb51.net/article/120018.htm