问答详情
源自:9-8 访问子节点childNodes

左边图片document.getElementsByTagName("ul")[0].childNodes;这个代码里面的)[0]这个代表什么意思

document.getElementsByTagName("ul")[0].childNodes;这个代码里面的)[0]这个代表什么意思,什么作用

那为什么是[0]不是[1],[2]这些呢?

还有document.write("节点类型:"+x[0].nodeType);这里x[0]为什么也加个[0].而不是直接用x?

提问者:云鬓花颜 2015-01-02 16:37

个回答

  • Levier007
    2017-05-13 22:35:03

    马克一下

  • 子非酸菜鱼
    2015-01-27 11:43:33

    数组下标,从0开始,0是第一个

  • puffbaby
    2015-01-10 16:03:08

    document.getElementsByTagName("ul") 表示取的是整个页面ul标签,一个页面有可能有好几个ul,而且getElementsByTagName注意到Elements 是复数了么?  document.getElementsByTagName("ul")取得的是ul的数组啊。

    document.getElementsByTagName("ul")(0) 是数组的的一个,那不就是页面中的第一个ul么?

    然后再跟着childNodes ,那就是第一个ul的子节点了。

  • 白水向前冲
    2015-01-07 13:06:04

    第一个问题我也没理解透彻,第二问题比较清晰

    document.write("节点类型:"+x[0].nodeType);这里x[0]

    这里的X是一个数组(里面存储着ul的子节点),程序是要显示数组里第一个子节点的类型所以用x[0],如果改成x[1]就是显示第二个类型

  • 仗剑闯江湖
    2015-01-02 18:17:55

    getElementsByTagName()

    没注意到elements是复数的?

    标签名可以重复,这个方法得到的是一个nodelist,是个列表。

    getElementById()这个方法得到的对象就是唯一的,因为id不能重复。