这可能只是我盯着代码太长时间而错过重要内容的另一个实例。基本上,我有一个脚本,在WebKit中,当发生.click(jQuery)事件时,该脚本用单击项的内容填充另一个脚本。但是,由于某种原因,多次单击某个项目会导致DOM元素被删除。有任何想法吗? JSFiddle与下面链接的代码示例。
这是我认为是罪魁祸首的功能:
$(".vote-divs .vote-div").click(function () {
$(".vote-none").hide()
$(".step-2-column-left .vote-div").each(function () {
$(this).hide();
});
$("#" + $(this).attr("id") + "-s").show();
$(".confirm-s").each(function () {
$(this).hide();
});
if ($(this).attr("id") == "vote-grow") {
$("#donation-vote-for").val("Grow");
$("#confirm-grow-s").show();
} else if ($(this).attr("id") == "vote-stache") {
$("#donation-vote-for").val("Stache");
$("#confirm-stache-s").show();
} else if ($(this).attr("id") == "vote-shave") {
$("#donation-vote-for").val("Shave");
$("#confirm-shave-s").show();
} else if ($(this).attr("id") == "vote-mutton") {
$("#donation-vote-for").val("Mutton");
$("#confirm-mutton-s").show();
} else if ($(this).attr("id") == "vote-manchu") {
$("#donation-vote-for").val("Manchu");
$("#confirm-manchu-s").show();
}
console.log(event.target);
$(".vote-none").html(event.target);
goTo("3");
});
JSFiddle
最佳答案
尝试
$(".vote-none").html($(event.target).clone());
代替
$(".vote-none").html(event.target);
演示:Fiddle
关于javascript - Javascript导致DOM元素被删除,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16229750/