我想知道它之间的区别:
$('#foo').click(function() {
alert('User clicked on "foo."');
});
和这个
$('#foo').bind('click', function() {
alert('User clicked on "foo."');
});
(我阅读了文档,但我还没有得到它。)
答案 0 :(得分:4)
$().click(fn)
和$().bind('click', fn)
乍一看是相同的,但$.bind
版本更强大,原因有二:
$().bind()
允许您为多个事件分配一个处理程序,例如$().bind('click keyup', fn)
。$().bind()
支持namespaced events - 如果您只想删除元素绑定的某些事件处理程序$().unbind)
,这是一项功能强大的功能。答案 1 :(得分:1)
没有区别,但您可以使用bind
$('#foo').click(function(){})
触发后会调用
$('#foo').bind('click', function() {})
所以
$('#foo').click(function() {
alert('User clicked on "foo."');
});
和这个
$('#foo').bind('click', function() {
alert('User clicked on "foo."');
});
意思相同。
bind的另一个用途是:
$('#foo').bind('click mouseover focus', function() {
alert('User clicked on "foo."');
});
希望这有帮助。
答案 2 :(得分:0)
bind()方法为所选元素附加一个或多个事件处理程序,并指定在事件发生时运行的函数。 click()函数不绑定多个事件处理程序。 click()方法触发click事件,或者附加一个函数以在发生click事件时运行。
$( "#button1" ).bind({
click: function() {
Do something on click
},
mouseenter: function() {
// Do something on mouseenter
}
});
和
$('#button1').click(function() {
alert('User clicked on button');
});