ByName

ByName

在视频中讲到的其中一种原生js获取元素的方法:

<input type="text" name="username">

document.getElementsByName("username")

老师说它返回的是节点的集合,而节点的集合是可以包含元素的集合。

可以用ByName获取到的元素首先得有name的属性吧,有name属性的元素就不叫元素,而叫节点了吗?后面一句"节点的集合是可以包含元素的集合"更不明白了?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

你好同学 ,getElementsByName获取的元素是要有一个name属性才能获取到它 。但是后一句可能理解的有一些偏差了 。元素实际上指的就是html标签 , 有name属性的元素还是叫做元素的 。而节点是一个统称 , 例如元素叫做元素节点 , 页面中还有文本节点(就是文字) ,还有空节点 ,这些都叫做节点 。

你使用getElementsByName获取的是节点集合 ,这些节点集合里面就是元素节点 , 例如如下:

http://img1.sycdn.imooc.com//climg/5c43e8bb00017fd007720311.jpg

获取的就是三个元素节点 ,这三个元素节点就是一个节点的集合:

http://img1.sycdn.imooc.com//climg/5c43e8d900012dec04180046.jpg

祝学习愉快 ,望采纳 。

  • 郝存杰 提问者 #1
    文本节点指的是html标签中的文本内容。而空节点是指标签中的内容为空吗?
    2019-01-20 15:30:16
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师