使用jQuery连接事件处理程序时,使用click方法与
$().click(fn)而不是使用bind方法
$().bind('click',fn);而不是绑定的可选数据参数。
发布于 2009-02-06 01:30:37
不管它有什么价值,从jQuery source
jQuery.each( ("blur,focus,load,resize,scroll,unload,click,dblclick," +
"mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave," +
"change,select,submit,keydown,keypress,keyup,error").split(","), function(i, name){
// Handle event binding
jQuery.fn[name] = function(fn){
return fn ? this.bind(name, fn) : this.trigger(name);
};
});所以不,没有区别-
$().click(fn)呼叫
$().bind('click',fn)发布于 2009-02-06 07:35:33
马修的答案是+1,但我想我应该提一下,您还可以使用bind一次性绑定多个事件处理程序
$('#myDiv').bind('mouseover focus', function() {
$(this).addClass('focus')
});更清晰的等价物是:
var myFunc = function() {
$(this).addClass('focus');
};
$('#myDiv')
.mouseover(myFunc)
.focus(myFunc)
;发布于 2009-02-06 01:29:07
有一个不同之处,那就是您可以使用第二种形式绑定自定义事件。否则,它们似乎是同义词。请参阅:jQuery Event Docs
https://stackoverflow.com/questions/518762
复制相似问题