【发布时间】:2016-12-09 09:55:43
【问题描述】:
我需要做的是每3个段落创建h1标签,所以我有12个段落,应该有4个h1标签,每个需要包含每三个段落的10个元素。
例子:
h1(内容将是它下面每个段落的前十个元素) p p p h1 p p p 等等。
到目前为止我做了什么:
HTML:
<div id="pastraipos">
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
</div>
JS:
var parent = document.getElementById("pastraipos");
var children = parent.childElementCount;
console.log(children);
for (var i=0; i<children; i=i+3){
var h = document.createElement("H1");
var t = document.createTextNode("Hello World");
h.appendChild(t);
parent.insertBefore(h, parent.children[i]);
}
因此,这段代码创建了 4 个 h1 元素,并将其附加到 <div id="pastraipos"></div>
它有什么问题,它只是每 3 个元素附加一个子元素?
我的结果是:
<h1>Hello World</h1>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<h1>Hello World</h1>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<h1>Hello World</h1>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<h1>Hello World</h1>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
<p>Lorem ipsum dolor sit amet..</p>
我想我需要下一个循环来匹配要附加的正确索引,但问题是当我添加到这个循环时,第二个循环 - 它搞砸了,我被困在这里很糟糕,需要你的帮助,谢谢.
【问题讨论】:
-
无法理解您要做什么。您可以使用您的代码的 html 输出以及您要实现的目标的 html 输出吗?第一段的解释让我很困惑
标签: javascript html for-loop dom appendchild