[英]bind() and unbind() in click() function
I have this code: 我有以下代码:
$('#people_nav>.prev, #people_nav>.next').click(function(){
// Here I need to disable event of click for needed elements, see code below
$('#people_nav>.prev, #people_nav>.next').unbind('click');
...
code
...
// Here I need resume event for click() function. How?
});
How can I resume event for click()
function? 如何恢复click()
函数的事件? It should be in body of click(function(){...});
它应该在click(function(){...});
正文中click(function(){...});
... ...
You can use on()
and off()
for that, and a named function 您可以使用on()
和off()
以及一个命名函数
var elements = $('#people_nav > .prev, #people_nav > .next');
elements.on('click', doStuff); // bind handler
function doStuff() {
elements.off('click'); // unbind handler
/*...
code
...*/
elements.on('click', doStuff); // rebind handler
});
You can use a named function. 您可以使用命名函数。 Something like 就像是
var element = $('#people_nav>.prev, #people_nav>.next'); //cache for better performance
var yourFunction = function () {
// Here I need to disable event of click for needed elements, see code below
element.off('click'); //unbind event
...
code
...
// Here I need resume event for click() function. How?
element.click(yourFunction);
};
element.click(yourFunction);
However, I would recommend the use of on()
and off()
但是,我建议使用on()
和off()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.