我试图创建每次点击按钮时动态添加div容器的网页,这样做很好。如果我单击按钮两次,则会创建两个容器,一个在另一个之上。但是,问题在于我尝试使用特定功能追加和修改每个特定容器内的内容。
在某种程度上,我知道我只是试图为每个特定的"实例"运行一个函数。点击。例如,如果我单击按钮一次,则会显示一个新框,并且"嗨"半秒后出现在盒子里面。如果我再次点击该按钮,则会显示另一个框,并且"嗨"半秒后出现在那个盒子内 - 不影响第一个盒子。我的代码目前看起来像这样:
$("#submit").click(function(){
var parentContainer = $("<div class = 'actualstatus'></div>");
parentContainer.hide().appendTo("#wrapper").fadeIn(1500);
function add(){
$("#actualstatus").append("<p>Hi</p>");
};
setTimeout(add,500);
});
现在的问题是我正在创建一个名为parentContainer的div容器,其中包含一个类&#39; actualstatus&#39;,因此所有新创建的div都将具有相同的类名。因此,每次点击,所有parentContainers都会得到一个&#34; Hi&#34;添加到他们 - 即使是旧的。现在,我想知道如何
答案 0 :(得分:1)
只需引用您刚创建的元素,即parentContainer
:
function add(){
parentContainer.append("<p>Hi</p>");
}
答案 1 :(得分:0)
最简单的解决方案IMO将新div传递给你的函数,以便只有那个div被定位。
$("#submit").click(function(){
var parentContainer = $("<div class = 'actualstatus'></div>");
parentContainer.hide().appendTo("#wrapper").fadeIn(1500);
function add(newdiv){
newdiv.append("<p>Hi</p>");
};
setTimeout(function(){add(parentContainer)},500);
});
<强> jsFiddle example 强>