$(“。anything”)之间有什么区别.Click()和$(“。anything”)。bind(click)
$(".anything").click(function() {
});
$(".anything").bind('click', function() {
});
答案 0 :(得分:8)
没有,click(function() { })
只是bind("click", function() { })
的快捷方式。
来自jQuery文档:
jQuery库提供了绑定标准事件类型的快捷方法,例如.bind('click')的.click()。
您可以详细了解bind()
here。
答案 1 :(得分:6)
第一个是第二个的快捷方式。第二个实际上是错误的,click
应该被引用。此外,在第二个中,您还可以将相同的函数绑定到多个事件,每个事件用空格分隔。 E.g。
$(".anything").bind("click keypress blur", function() {
});
答案 2 :(得分:4)
在那个具体案例中,绝对没有。
然而:
A)如果你给.click()
没有参数,它会触发事件而不是设置处理程序。
B)只有.bind()
允许你使用注册处理程序的“命名空间”方式:
$(whatever).bind('click.myEvent', function (e) { ... });
$(whatever).unbind('click.myEvent'); // Removes just that handler
答案 3 :(得分:2)
参见这篇文章,它指向JQuery源代码,以显示.click(fn)只调用.bind('click',fn):jQuery: $().click(fn) vs. $().bind('click',fn);
我通常只在以下情况下使用后者:
var fn = function() { alert('foo'); } $('#foo').bind('click', fn); ... $('#foo').unbind('click', fn);