我目前正在将一个节点附加到div的末尾以动态添加到div,但我希望将其附加到div的开头而不是div的末尾。
我目前的代码如下:
var para=document.createElement('div');
var node=document.createTextNode('this is new');
para.appendChild(node);
var element=document.getElementById("div1");
element.appendChild(para);
<div id="div1">
<p id="p1">This is a paragraph.</p>
<p id="p2">This is another paragraph.</p>
</div>
如何附加到div的开头?
答案 0 :(得分:3)
您可以将insertBefore()与父级firstChild一起用作参考元素:
var element = document.getElementById("div1");
element.insertBefore(para, element.firstChild);
答案 1 :(得分:0)
研究jQuery(http://www.jquery.com),因为它会让你的生活变得更加容易。其他库存在,但jQuery是最受欢迎的。
你的jQuery代码:
$("<div/>").append("this is new").appendTo($("#div1"))
对于前置:
$("<div/>").prepend("this is new").prependTo($("#div1"))
答案 2 :(得分:0)
element.insertBefore(para, element.firstChild )
答案 3 :(得分:0)
我不确定,但你可以这样做:
<script type="text/javascript">
window.onload=function(){
dv=document.createElement('div1');
txt=document.createTextNode('this is new');
dv.appendChild(txt);
document.getElementById('div1').appendChild(dv);
}
</script>
答案 4 :(得分:0)
你可以使用javascript insertBefore()方法。当你加入dom时。