因此有两个约束我的问题:jQuery的:绑定和解除绑定直播点击活动
- 我必须用我的单击事件的外部函数调用,并
- 我必须使用现场点击事件,而是绑定一个典型的点击事件。
所以我的问题是,我试图解除绑定click事件它发生之后,再重新绑定,一旦点击事件代码完成。我这样做是为了防止在代码当前正在处理的过程中出现重复点击(我有淡入/淡出动画,可以让按钮快速点击两次或三次,从而执行我的代码2到3次,这是所期望的) 。我使用的代码如下:
$item.live("click", handleClick);
和
function handleClick(ev) {
$(this).die("click");
// perform code here, including things with 'ev'
$(this).live("click", handleClick);
}
我疯了,还是这应该是没有问题的工作?现在,我可以点击一次,但之后不会再次点击。显然,die()正在工作,但由于某种原因它不会被重新绑定到该函数。我已经验证它确实会触及handleClick()中的代码以重新绑定实时点击。
任何想法?任何帮助将不胜感激。谢谢。
@格雷格,有趣。也许如果我在函数中分配了实时点击事件,就像这样:'var $ tempVar = $('#'+ $(this).attr('id'))',然后说'$ tempVar.live(“click “,handleClick)'你认为这会起作用吗? – 2009-11-25 19:25:31
我*认为*所以... – Greg 2009-11-25 19:46:54
是的,这将工作 – PetersenDidIt 2009-11-26 02:00:16