【发布时间】:2014-01-22 00:01:32
【问题描述】:
小提琴 - http://jsbin.com/oloriTo/1/edit
删除元素不是问题,但是当我单击 remove false 按钮(类为 .rf)时,我不想再删除元素,除非单击了 remove true(类为 .rt)按钮。
目前,当我单击 remove true 元素时,它会按预期进行。 (演示有点糟糕,但它明白了要点)当我点击删除错误按钮时,我仍然可以点击 .container div 中的元素并删除它们,这不应该发生。
非常感谢任何帮助。
$(document).ready(function() {
var enabled = false;
$('.rt').click(function() {
enabled = true;
if (enabled === true) {
$('.container *').on('mousedown touchstart', function() {
$(this).remove();
return false;
});
} else {
enabled = false;
}
});
$('.rf').click(function() {
enabled = false;
});
});
【问题讨论】:
-
条件没有意义,
enabled将始终为真,因为您在上面的行中将其设置为真? -
enabled 的 var 默认设置为 false。当按钮 remove true 被点击时启用变为 true,然后当 remove false 按钮被点击时变为 false。
-
不管你设置什么,你总是在条件之前的那一行把它重置为真,所以就像在做
if (true === true)一样,它总是真的,你只是继续打桩在事件处理程序上。 -
哦,我不知道。感谢您的帮助。
标签: javascript jquery