在循环中插入标签 javascript

Insert tag in loop javascript

我想在每个 rect 标签之后插入 p 标签,但不幸的是,当我使用 appendChild 时,p 标签被插入到 rect 标签中,而不是之后:

JS代码:

$("#id_svg .nv-series-0 rect").each(function(index){ 

var line = document.createElement("p");
  line.className = "line";
  line.innerHTML = '|';


this.appendChild(line);

)}

结果是: ** html 代码:**

<svg id="id_svg">
    <g class="nv-series-0">
        <rect class="nv-bar positive">
            <p class="line">|</p>
        </rect>
    </g>
</svg>

您可以使用 Element.insertAdjacentElement 而不是 appendChild(将其作为 child 插入)。

this.insertAdjacentElement('afterend', line);