jQuery 解除 Live/Delegate 事件与命名空间的绑定
我正在尝试解除实时事件的绑定(已尝试使用 .live 和 .delegate)。
当我想解除绑定时,我有 3 个不同的选项:解除绑定 "click"
、解除绑定 "click.namespace1"
或解除绑定 ".namespace1"
。它们都做不同的事情:第一个取消绑定所有单击事件(不是我想要的),第二个仅取消绑定“click”处的事件与命名空间“namespace1”(同样,这不是我想要的)。最后一个解除所有与命名空间“namespace1”绑定的事件的绑定,即使它们不是“点击”,这就是我想要的。
当您使用 .unbind(".namespace1")
时,它非常适合使用 .bind
进行绑定事件。但是当您使用 .die(".namespace1")
或 .undelegate(".namespace1")
时,它不起作用!
这是一个示例: http://jsfiddle.net/uWxpv/8/
如果有人知道,请我能做什么帮助我!
预先感谢,
迭戈
I'm trying to unbind a live event (have tried with .live and with .delegate).
When I want to unbind it I have 3 different options: unbind "click"
, unbind "click.namespace1"
or unbind ".namespace1"
. They all do different things: first one unbind all click events (is not what I want), the second one unbind only the events at "click" with the namespace "namespace1" (again, is not what I want). The last one unbind all binded events with the namespace "namespace1", even if they are not "click", this is what I want.
When you use .unbind(".namespace1")
it works perfectly for binded events with .bind
. But when you use .die(".namespace1")
or .undelegate(".namespace1")
it does not work!!
Here is a sample: http://jsfiddle.net/uWxpv/8/
Please if someone know what can I do help me!
Thanks in advance,
Diego
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
正确的做法是:
在这里你可以尝试一下:http://jsfiddle.net/mPrsP/
The correct way to do this is:
Here you can try it: http://jsfiddle.net/mPrsP/