fiddle -http://jsbin.com/oloriTo/1/edit
删除元素不是问题,但是当我单击删除 false 按钮(类是 .rf)时,我不想再删除元素,除非单击删除 true(类是 .rt)按钮。
目前,当我单击删除 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;
});
});
最佳答案
您正在将删除代码绑定(bind)到设置的启用代码中。将其分解并让它查看由 .rf
和 .rt
设置的变量。
$(document).ready(function() {
var enabled = false;
$('.rt').click(function() {
enabled = true;
});
$('.rf').click(function() {
enabled = false;
});
$('.container').on('mousedown touchstart', '*',function() {
if (enabled)
$(this).remove();
return false;
});
});
关于javascript - JQuery:动态删除元素(隔离函数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21271607/