我有一个 div,我在上面绑定(bind)了 click
,如下所示:
$("#mydiv").one('click',function(){ ... });
因为我只想执行一个 Action 一次。
现在我想重新绑定(bind)
它
$("#mydiv").on('click',function(){ ... });
但前提是用户点击它,至少是第一次。
我该怎么做?
最佳答案
您可以 namespace events使用 jQuery:
$('#mydiv').on('click.firstClick', function () {
// do stuff for the first time
$(this).off('click.firstClick'); // only removes this event
});
$('#mydiv').on('click', function () {
// stuff that always happens when you click
});
如果您只想让某事在第一次发生,之后每次都发生:
$('#mydiv').click(function () {
// stuff that happens the first time you click
$(this).off('click');
$(this).click(function () {
// stuff that happens every time after this
});
});
第一种情况示例:http://jsfiddle.net/75HWV/ 第二种情况的示例:http://jsfiddle.net/SbhY3/
关于javascript - 如何仅在事件失去绑定(bind)之前才绑定(bind)事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15590304/