问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

DOM获取标签的方法

发布网友 发布时间:2022-11-22 05:54

我来回答

1个回答

热心网友 时间:2024-01-17 17:44

(1) document.getElementById(elementId):该方法通过节点的ID,可以准确获得需要的元素,是比较简单快捷的方法。如果页面上含有多个相同id的节点,那么只返回第一个节点。
如今,已经出现了如prototype、Mootools等多个JavaScript库,它们提供了更简便的方法:$(id),参数仍然是节点的id。这个方法可以看作是document.getElementById()的另外一种写法,不过$()的功能更为强大,具体用法可以参考它们各自的API文档。
(2)document.getElementsByName(elementName):该方法是通过节点的name获取节点,从名字可以看出,这个方法返回的不是一个节点元素,而是具有同样名称的节点数组。然后,我们可以通过要获取节点的某个属性来循环判断是否为需要的节点。
例如:在HTML中checkbox和radio都是通过相同的name属性值,来标识一个组内的元素。如果我们现在要获取被选中的元素,首先获取该组元素,然后循环判断是节点的checked属性值是否为true即可。
(3)document.getElementsByTagName(tagName):该方法是通过节点的Tag获取节点,同样该方法也是返回一个数组,例如:document.getElementsByTagName('A')将会返回页面上所有超链接节点。在获取节点之前,一般都是知道节点的类型的,所以使用该方法比较简单。但是缺点也是显而易见,那就是返回的数组可能十分庞大,这样就会浪费很多时间。那么,这个方法是不是就没有用处了呢?当然不是,这个方法和上面的两个不同,它不是document节点的专有方法,还可以应用其他的节点,下面将会提到。

(1)parentObj.firstChild:如果节点为已知节点(parentObj)的第一个子节点就可以使用这个方法。这个属性是可以递归使用的,也就是支持parentObj.firstChild.firstChild.firstChild...的形式,如此就可以获得更深层次的节点。
(2)parentObj.lastChild:很显然,这个属性是获取已知节点(parentObj)的最后一个子节点。与firstChild一样,它也可以递归使用。
在使用中,如果我们把二者结合起来,那么将会达到更加令人兴奋的效果,即:parentObj.firstChild.lastChild.lastChild...
(3)parentObj.childNodes:获取已知节点的子节点数组,然后可以通过循环或者索引找到需要的节点。
注意:经测试发现,在IE7上获取的是直接子节点的数组,而在Firefox2.0.0.11上获取的是所有子节点即包括子节点的子节点。
(4)parentObj.children:获取已知节点的直接子节点数组。
注意:经测试,在IE7上,和childNodes效果一样,而Firefox2.0.0.11不支持。这也是为什么我要使用和其他方法不同样式的原因。因此不建议使用。
(5)parentObj.getElementsByTagName(tagName):使用方法不再赘述,它返回已知节点的所有子节点中类型为指定值的子节点数组。例如:parentObj.getElementsByTagName('A')返回已知的子节点中的所有超链接。

(1)neighbourNode.previousSibling:获取已知节点(neighbourNode)的前一个节点,这个属性和前面的firstChild、lastChild一样都似乎可以递归使用的。
(2)neighbourNode.nextSibling:获取已知节点(neighbourNode)的下一个节点,同样支持递归。

(1)childNode.parentNode:获取已知节点的父节点。
上面提到的方法,只是一些基本的方法,如果使用了Prototype等JavaScript库,可能还获得其他不同的方法,例如通过节点的class获取等等。不过,如果能够灵活运用上面的各种方法,相信应该可以应付大部分的程序。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
罗马全面战争怎么样提高元老院评价? 半夜家中镜匾忽然碎了 镜子忽然碎掉怎么解 化能异养型微生物分类 如何判断自养微生物与异养微生物 如何得知某微生物是否为哪种氨基酸的异养型微生物。 滨州市北海振宇电子科技有限责任公司怎么样? 北京振宇科技有限公司怎么样? 上海振宇化工科技有限公司经营范围 商业医保是否值得购买? ...了一段抖音视频,保存到手机以后再发到朋友圈为什么就没有声音了? 今麦郎方便面和康师傅哪个贵 大象喝水是用嘴还是用鼻子? 开眼角手术能做到不留疤痕吗 稻城亚丁,号称“蓝色星球上的最后一片净土”,却是我的恶魔之旅 稻城亚丁,一次恶魔之旅,却是一生难忘之旅(二) 每天都碰丙烯颜料,油画颜料,请问对皮 “孩子静悄悄肯定在作妖”,你见过或经历过孩子哪些作妖方式? 为啥有些同学贪玩,上课玩笔拆笔玩颜料玩其他之类的? 我弟弟玩颜料时不小心吃了 这有事吗 颜料有毒吗 是否有轻便一点的床?不愿意太麻烦啦。 枣阳那个地方买的有简易床 大象靠啥喝水 一个重度抑郁症、重度焦虑患者的康复感悟 抑郁症患者完全康复后的感受是怎样的?你是如何治疗的? 电脑里的数据改动保存后电脑坏了,修好后数据会恢复原未改动之前不_百度... 品牌电脑维修 屏幕怎么校准 安卓系统华为P40手机怎么校准屏幕 喝醪糟有什么好处 运河桥客运站去石家庄市省第一医院怎么走,坐几路车 在IE11里面为什么不能使用new ActiveXObject("Microsoft.XMLDOM... 没完没了葛优香山喝的啥饮料 瓶盖上有顺字的是什么饮料 请回答一下 谢谢 ...扁扁的金属做的,私人定制葛优最后坐在垃圾河边喝水的那 傅彪去世后,冯小刚替他还债,葛优帮他养大的儿子,如今怎么样? 宁夏麻将515怎么算钱 闲来宁夏麻将玩的时候自摸胡了,卡了一下就多了一张牌,赢不了了怎么回事... 微信粘贴到excel图片怎么能变清晰 章鱼的玩具是夫妻吗? 该如何应对小孩子磨牙 怎么剥离uv光油 银油喷油调油的比例是多少 我买的是美丽华的刮刮银油墨,请问用什么稀释剂附着力强又易刮掉_百度知... 开水能溶解光油吗? 印刷压光中的剥离是指!?? 水转印工艺制作流程 请高人帮我算命,能用心的来,我信 我想问一下高铁晚上12点以后为什么不开 我的生辰1982年10月09日下午4点出生,请高手帮忙批八字 1984年农历5月26日巳时生,女,这是什么意思啊??