什么是.divClicked在这里?

时间:2013-02-14 06:19:45

标签: jquery

什么是.div点击这里?

$("div#div1").bind("click.divClick",function(){alert("Div Clicked");})
有人问我这个问题而且我没有答案。是事件类型还是命名空间?

3 个答案:

答案 0 :(得分:8)

jQuery中的事件可以这样写:

<event-type>[.<event-namespace>]

在您的情况下,click.divClick只是一个click事件,除了它是在divClick命名空间中组织的。

使用名称空间的一个优点是当您需要取消绑定事件侦听器时:

$(el).bind('click', function() { alert('click 1'); };
$(el).bind('click.divClick', function() { alert('click 2'); };

$(el).unbind('click.divClick');

最后一行将仅取消注册click 2事件处理程序,而不会影响click 1事件处理程序。

您还可以取消注册命名空间中的所有事件:

$(el).unbind('.divClick');

答案 1 :(得分:4)

它是命名空间。如果eventType字符串包含句点(。)字符,则该事件是命名空间。句点字符将事件与其名称空间分开。例如,在调用.bind('click.name',handler)中,字符串单击是事件类型,字符串名称是名称空间。命名空间允许我们解除绑定或触发某种类型的事件而不影响其他事件。有关更多信息,请参阅.unbind()的讨论。

答案 2 :(得分:1)

这似乎是一个自定义事件。

您可以将其称为

$('mySelector').trigger("click.divClick");

请参阅文档:jQuery .bind() Documentation