0

有没有办法使用循环在彼此后面插入单独的 DIV 元素?

现在我使用循环来做到这一点,但它不记得之前使用 load 方法插入的 DIV。结果是我只看到最后一个。

该代码旨在显示所有消息,当您第一次到达页面时,它会读取带有 db-id 的 cookie。

概括:

addmessage()函数接收 xml 对象并开始循环遍历它。每条单独的消息都会调用该newnote()函数,该函数会加载一个 DIV 元素并在其回调函数中执行一些操作,例如设置db-id. 之后它返回到addmessage函数。

4

3 回答 3

1

您使用什么方法插入 DIV?如果您只想将它​​们全部添加到您正在使用的任何容器的末尾,您可以使用append. 如果您在特定位置需要它们,我会使用beforeafter

<div id="container">
    <div id="itemOne"></div>
    <div id="itemTwo"></div>
    <div id="itemThree"></div>
</div>

如果你需要在 itemTwo 之后插入一些东西:

$('#itemTwo').after("<div>New node</div>");

如果您在循环中执行此操作并且需要在 itemTwo 之后继续按顺序添加它们(例如),那么您可以尝试存储对最后插入的元素的引用,然后在其after上使用该函数,或者通过插入它在以下项目 itemThree 之前。

于 2009-05-18T02:57:28.250 回答
0

在上面的帮助下,我找到了解决方案,并提供了参考建议

如果我尝试使用这样的选择器计算新添加的元素的数量

index = $("div.paneltbnote").size();

结果始终为 0

但是,如果您将 indexnumber 明确地提供给 newnote() 函数,它也会像预期的那样工作。我只是在循环中添加了一个计数器并将其用作函数的额外参数

选择器无法计算函数本身内新添加的元素。至少,这是我目前的理解。

于 2009-05-18T08:49:15.933 回答
0

假设您的问题是找到最后一个 DIV,您可以搜索最后一个DIV,然后将其放在后面

于 2009-05-18T02:58:53.877 回答