为什么php在html后面啊

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

小学渣丶

2017-01-14 17:40

<!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><id ="a"li>HTML</li></ul> 

 

<script type="text/javascript">


  var otest = document.getElementById("test");  

  var j = document.getElementById("a");  

  var k=document.createElement("li");

  k.innerHTML="php";

  otest.insertBefore(k,j);

  

  

</script> 


</body>

</html>


写回答 关注

1回答

  • Eason_Cj
    2017-01-15 00:42:58
    已采纳

    你的html里面id为"a"的<li>标签写错了,不应该是<id ="a"li>HTML</li>,应该是<li id ="a">HTML</li>,你那样的写法浏览器会解释错误,因此“HTML”会被当作一个普通的文本节点,而不是id为"a"的<li>标签中的文本节点,因此浏览器找不到j这个节点对象,所以会将新的节点k加在HTML的后面(即最后一个子节点的前面,而HTML后面还有</li>,所以不会被当作最后一个子节点)。

    小学渣丶

    非常感谢!

    2017-01-15 11:44:32

    共 1 条回复 >

JavaScript进阶篇

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

468063 学习 · 21891 问题

查看课程

相似问题