课程
/前端开发
/JavaScript
/JavaScript进阶篇
<script type="text/javascript"> var mylist = document.getElementById("tcon"); var x=mylist.parentNode.parentNode.parentNode.lastChild.childNodes; for(var i=0;i<x.length;i++) document.write(x[i].innerHTML); </script>
2016-07-29
源自:JavaScript进阶篇 9-10
正在回答
别钻牛角尖,视频里是通过类比,让我们形象地更容易地理解类和对象,而不是区分什么类什么类,不要本末倒置亲,不是的,是class类名为first的p标签,所以不能加入空格。
只要求求到ul的最后一个li, 所以 这句var x=mylist.parentNode.parentNode.parentNode.lastChild.childNodes; 多求了一个子节childNode , for判断句多余,所以后面因为 document.write(x.innerHTML);
1、现在的x为id=lesson4的那个li的所以的childNodes,即"HTML/CSS"和ul、li内的所有元素。直接读取x所以元素的innerHTML就指向不明确了。改为
var x=mylist.parentNode.parentNode.parentNode.lastChild.childNodes[1].childNodes;
即读取id=lesson4的那个li内的ul的子节点。
2、for语句的函数内容没有用“{”和“}”包起来;
3、ul中去掉空白符,即<ul><li>文字</li><li>段落</li><li>表单</li><li>表格</li></ul>
undefined 文字 段落 表单 表格 undefined
举报
本课程从如何插入JS代码开始,带您进入网页动态交互世界
3 回答为什么输出会有个undefined
1 回答为什么输出的三个值都是undefined啊?
1 回答为什么for in输出会有多个undefined输出?
1 回答为什么输出结果会有两个undefined
3 回答为什么按开始和结果都没有反应?