jQuery绑定事件函数区别
bind(type,[data],func);
为每个匹配元素的特定事件绑定一个事件处理器函数。
如果既想取消默认的行为,又想阻止事件起泡,这个事件处理函数必须返回false。
type:事件类型 example: click mouseover等等。
data:可选 作为event.data属性值 传递给事件对象的额外数据对象
func:绑定到每个匹配元素的事件上面的处理函数。
example1:
function handler(event) { alert(event.data.foo); }
$("p").bind("click", {foo: "bar"}, handler)
example2:$("form").bind("submit", function(event){ event.preventDefault(); });
example3:$("form").bind("submit", function(event){ event.stopPropagation(); });
live(type,func);
给所有当前和将来会匹配的元素绑定一个事件处理函数,同时可绑定自定义事件。
jQuery.min.js.1.3版本支持的事件有:click dbclick mousedown mouseover mouseup mousemove mouseout keydown keypress keyup
live一次只能绑定一个事件,并且live事件只能支持使用选择器选择的元素。
live函数与流行的livequery插件很像。
example:阻止事件冒泡
html code:
<ul><li><b>Google</b></li>
<li><b>Baidu</b></li></ul> 实例来自手册
jQuery code:
$("li").live("click", function(){ $(this).addClass("active"); //live事件可以被阻止冒泡 }).eq(0).bind("click", function(){ $(this).addClass("active"); //普通的click事件是无法阻止冒泡的 }); $("li b").live("click", function(){ $(this).addClass("active"); return false; //阻止冒泡及阻止浏览器默认行为 });