我觉得后面写的和注释掉的是等效的,但为什么结果不一样?

来源:9-13 插入节点insertBefore()

慕工程9285452

2015-09-02 10:47

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
</head>
<body>

<ul id="test"><li>JavaScript</li><li>HTML</li></ul> 
 
<script type="text/javascript">

//  var otest = document.getElementById("test");
//  var newNode=document.createElement("li");
//    newNode.innerHTML="PHP";
//    otest.insertBefore(newNode,otest.childNodes[1])
     
    
  var otest = document.getElementById("test");
    document.createElement("li").innerHTML="PHP";        
    otest.insertBefore(document.createElement("li"),otest.childNodes[1]); 
  
  
</script> 

</body>
</html>


写回答 关注

4回答

  • haodaking
    2015-09-03 14:52:05
    已采纳

    otest.insertBefore(document.createElement("li"),otest.childNodes[1]); 

    这里边的document.createElement("li")是又创建了个li元素,并不是引用上边创建的

    慕工程928...

    你这么一说,我是豁然开朗了~~~非常感谢!

    2015-09-03 20:45:01

    共 1 条回复 >

  • 慕工程9285452
    2015-09-02 20:55:16

    想不明白,能想明白我也就不提问了,求解

  • xiaonvzi18
    2015-09-02 14:25:34

    你想明白没

  • xiaonvzi18
    2015-09-02 11:29:02

    很明显你觉得的是错的

    慕工程928...

    很明显你的回答是多余的

    2015-09-02 12:21:44

    共 1 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题