7

鉴于这种:

HTML

<button id="btn">Click me</button>
<br/>
<div id="result"></div>

JS

$("#btn").on("click.mynamespace", function (e) {
    $("#result").text("namespace: " + e.namespace);
});

为什么命名空间总是未定义?

编辑:

我想要做的是将事件处理程序的多个实例连接到按钮的单击事件。然后,当单击按钮时,依次调用每个实例。然后,事件处理程序的每个实例都需要断开自己的连接,这样如果再次单击按钮,则不会调用该处理程序实例。

4

1 回答 1

10

仅当使用 jQuery或方法namespace触发事件时才定义该属性。否则,如果有多个命名空间,jQuery 怎么知道要使用哪个命名空间?.trigger.triggerHandler

http://jsfiddle.net/GYyef/2/

http://api.jquery.com/event.namespace/

如果您的目标是让事件只发生一次,那么该.one()方法会更合适。

于 2013-03-26T19:32:52.930 回答