如何在应用事件on('click')
后重新启用off()
事件?
$('#btn-aluno').on('click', function() {
$('.new-step-email-aluno').toggle();
$('#btn-familiar').off();
});
$('#btn-familiar').on('click', function() {
$('.new-step-email-familiar').toggle();
$('#btn-aluno').off();
});
new-step-email-familiar
和new-step-email-aluno
= <input>
btn-aluno
和btn-familiar
= <span>
(用作按钮)
答案 0 :(得分:3)
使用event delegation
,
$(document).on('click',"#btn-aluno.active", function() {
$('.new-step-email-aluno').toggle();
$('#btn-familiar').removeClass("active");
});
$(document).on('click',"#btn-familiar.active", function() {
$('.new-step-email-familiar').toggle();
$('#btn-aluno').removeClass("active");
});
每当您想激活事件监听器时,只需将类active
添加到相关元素即可。同样在document
的位置尝试使用要绑定事件的元素的任何最接近的静态父级。
根据您的要求,您可以编辑您的逻辑,如下所示
$(document).on('click',"#btn-aluno.active", function() {
$('.new-step-email-aluno').toggle();
$('#btn-familiar').toggleClass("active");
});
$(document).on('click',"#btn-familiar.active", function() {
$('.new-step-email-familiar').toggle();
$('#btn-aluno').toggleClass("active");
});