2
我想禁用两个按钮上的点击事件一会儿,当另一个事件正在进行,然后重新启用它。 .off方法可以阻止它,但在.on之后使用无法再次使用按钮上的点击事件。暂时禁用点击事件
$('#button-block-1').click(function() {
$('#block-1, #block-1-expansion-button').stop().fadeToggle('slow');
if ($('#block-1, #block-1-expansion-button').is(':visible')) {$('#block-2').fadeOut('slow')}
});
$('#button-block-2').click(function() {
$('#block-2').stop().fadeToggle('slow');
if ($('#block-2').is(':visible')) {$('#block-1, #block-1-expansion-button').fadeOut('slow')}
});
$('#block-1-expansion-button').toggle(function() {
$('#body-wrapper').animate({
'top': '20px'
}, 450);
$('#button-block-1, #button-block-2').off('click');
},
function() {
$('#body-wrapper').animate({
'top': '0'
}, 450);
$('#button-block-1, #button-block-2').on('click');
});
[如何暂时禁用jQuery的一个单击处理?(http://stackoverflow.com/questions/1263042/how -to-暂时关闭,一键式处理功能于jQuery的)。 – Vucko
你也可以单独声明函数:http://jsfiddle.net/DCdwf/3/,但你应该随着烤的答案去。 –