求助各位慕友!关于本例中getElementsByTagName的一点疑问!

来源:9-11 访问兄弟节点

了不起的鸭嘴兽

2016-04-25 09:21

当利用getElementsByTagName取不同父元素的元素时,所取得元素排列是否会有区分(同单父元素选取的情况下相比),因为本例中若取第三个元素(即ID=“c”的“html”),结果输出显示“已经是最后一个节点”,难道这种情况下两段父元素中的子元素之间是有间隙的是吗?如果有那具体又是怎样的间隙?谢谢!

写回答 关注

2回答

  • 仁太
    2016-05-04 14:21:58

    用TagName取得的确是所有的li 但是这节中的例子 nextSibling 这个方法 取得却只是同级元素  你取值ID为C的节点   是第一个ul 的最后一个标签  所以提示是最后一个节点  nextSibling 这个方法不支持跨标签取值  所有不会取到ID为D的节点 就是不能获取第二个ul里面的节点

  • Uauslman
    2016-04-25 11:46:48

    不是有间隙,而是同一树层中的元素没有了,此时值为null,程序条件不满足停止运行(nextSibling 属性可返回某个节点之后紧跟的节点(处于同一树层级中))。

JavaScript进阶篇

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

468194 学习 · 21891 问题

查看课程

相似问题