鉴于此:
HTML
<button id="btn">Click me</button>
<br/>
<div id="result"></div>
JS
$("#btn").on("click.mynamespace", function (e) {
$("#result").text("namespace: " + e.namespace);
});
为什么名称空间始终未定义?
编辑:
我希望能够做的是将事件处理程序的多个实例连接到按钮的click事件。然后,当单击该按钮时,依次调用每个实例。然后,事件处理程序的每个实例都需要断开连接,这样如果再次单击该按钮,则不会调用该处理程序实例。
答案 0 :(得分:9)
仅在使用jQuery的namespace
或.trigger
方法触发事件时才定义.triggerHandler
属性。否则,如果存在多个命名空间,jQuery将如何知道要使用哪个命名空间?
http://api.jquery.com/event.namespace/
如果您的目标是仅将事件发生一次,则.one()
方法会更合适。