javascript - 将项目动态添加到现有列表

标签 javascript html loops dynamic

我需要将一个元素动态插入到现有的博客文章列表中。

这是一个 HTML 示例:

<div id="page">
  <div id="post">Post Content</div>
  <div id="post">Post Content</div>
  <div id="post">Post Content</div>
  <div id="post">Post Content</div>
  <!---- Dynamic Post Inserted Here--->
  <div id="post">Post Content</div>
  <div id="post">Post Content</div>
</div>

我创建了一个循环遍历帖子并返回位置的 for 循环,但返回的位置是一个整数,因此我无法将新帖子附加到该变量。那么将项目附加到我当前的帖子列表的最佳方式是什么?

我面前没有确切的功能,但这基本上就是我正在做的:

var post = docuemnt.getElementById('post');
var page = docuemnt.getElementById('page');
var pc = 0;
var insert = 5;
var newPost = "new post content";

for(post in page){
  if(pc == insert){
    **append new post content after this post**
  }else{
  pc++;
  }
}

最佳答案

如果您使用的是 jQuery,这将非常容易。

$('#post4').after('<div id="post5">new post content</div>');

如果你想用纯 JavaScript 来做,那么 take a look at this question .基本思想是:

referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);

在您的情况下,您需要创建一个 div 节点并直接附加到文档。

var newpost = document.createElement('div');
newpost.id = 'post5';
newpost.innerText = newpost.textContent = "new post content";

var post = document.getElementById('post4');

post.parentNode.insertBefore(newpost, post.nextSibling);

关于javascript - 将项目动态添加到现有列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12136153/

相关文章:

javascript - 请,需要帮助循环 Javascript 事件

python - 自动生成的列表行为不正常

javascript - Lync UCWA - 创建应用程序给出 HTTP 409 : Conflict error

python - 使用 beautifulsoup 获取 div 内所有元素的文本

javascript - 我应该将跟踪/分析 JS 代码放在开始 <body> 标记之后还是结束 <body> 标记之前吗?

javascript - 如何合并输入标签内的提交按钮?

javascript - 为什么这会造成无限循环并使我的浏览器崩溃?

javascript - 在javascript中捕获ctrl+z组合键

javascript - 通过 Javascript 中的角色数组过滤用户对象数组

javascript - 为什么浏览器在执行许多 ajax 请求时会死机?