老师有个疑问

来源:6-4 编程练习

vivi_li

2020-04-29 16:12:09

这种方法创建的节点为什么会显示在script标签之后?

var ul1 = document.createElement("ul");
var fragment =document.createDocumentFragment();
var body=document.getElementsByTagName("body")[0];
body.appendChild(ul1);
var li= null;
for(var i = 1; i<4;i++){
   var li1 = document.createElement("li");
   li1.appendChild(document.createTextNode("第"+i+"个li"));
   fragment.appendChild(li1);
}

ul1.appendChild(fragment);

写回答

3回答

好帮手慕言

2020-04-29

同学你好,可以使用insertBefore()方法,例如:

http://img.mukewang.com/climg/5ea95eb209db21d007740238.jpg

效果:

http://img.mukewang.com/climg/5ea95ee30915e95a03820108.jpg

同学看不懂也没有关系,现阶段可以作为一个了解,在后面的课程中会有详细的讲解:
http://img.mukewang.com/climg/5ea95f1b09dff94904260501.jpg

祝学习愉快~

0

好帮手慕言

2020-04-29

同学你好,因为使用的是appendChild()方法。appendChild() 方法可向节点的子节点列表的末尾添加新的子节点。因此ul被放在了script标签的后面。

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

0
hivi_li
h 放在前面用什么方法?
h020-04-29
共1条回复

向高山举目

2020-04-29

是不是执行后装填时没有指定位置,就放在后面。

0

0 学习 · 40143 问题

查看课程