博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
常见查找dom元素的几种方式
阅读量:4097 次
发布时间:2019-05-25

本文共 1045 字,大约阅读时间需要 3 分钟。

document.getElementById

只有在作为 document 的方法时才能起作用,而在DOM中的其他元素下无法生效。

如果没有查找到对应的元素,方法会返回null。注意ID参数是大小写敏感的

document.querySelector

返回节点子树内与之相匹配的第一个 Element 节点。如果没有匹配的节点,则返回null。

匹配是使用深度优先先序遍历,从文档标记中的第一个元素开始,并按子节点的顺序依次遍历。

  • 查找第一个匹配 class属性的html元素
    • 这个例子中,会返回当前文档中第一个类名为 “myclass” 的元素:
    • var el = document.querySelector(".myclass");
    • 这里, 一个class属性为"user-panel main"的div元素
      内包含一个name属性为"login"的input元素 ,如何选择,如下所示:
  • var el = document.querySelector("div.user-panel.main input[name='login']");

Document.querySelectorAll()

返回一个NodeList 包含节点子树内所有与之相匹配的Element节点,如果没有相匹配的,则返回一个空节点列表。

此方法基于ParentNode mixin的querySelectorAll() 实现。

elementList = parentNode.querySelectorAll(selectors);

  • 要选择文档中所有CSS的类(class)是warning或者note的段落§元素,可以这样写:
var special = document.querySelectorAll( "p.warning, p.note" );// 或者也可以通过ID来查询var el = document.querySelector( "#main, #basic, #exclamation" );

执行上面的代码后,el就包含了文档中元素的ID是main,basic或exclamation的所有元素中的第一个元素。

querySelector() and querySelectorAll() 里可以使用任何CSS选择器。

适用于 Document, DocumentFragment, 或 Element 接口
这比以前的技术要快得多

转载地址:http://bdqii.baihongyu.com/

你可能感兴趣的文章
vue源码系列文章good
查看>>
你不知道的Virtual DOM
查看>>
VUE面试题总结
查看>>
【TINY4412】U-BOOT移植笔记:(7)SDRAM驱动
查看>>
C++模板
查看>>
【C#】如何实现一个迭代器
查看>>
【C#】利用Conditional属性完成编译忽略
查看>>
【Unity】微信登录后将头像存为bytes,将bytes读取成sprite图片
查看>>
【Unity】使用GPS定位经纬度
查看>>
如何高效学习动态规划?
查看>>
动态规划法(六)鸡蛋掉落问题(一)
查看>>
算法数据结构 思维导图学习系列(1)- 数据结构 8种数据结构 数组(Array)链表(Linked List)队列(Queue)栈(Stack)树(Tree)散列表(Hash)堆(Heap)图
查看>>
【机器学习】机器学习系统SysML 阅读表
查看>>
最小费用流 Bellman-Ford与Dijkstra 模板
查看>>
实现高性能纠删码引擎 | 纠删码技术详解(下)
查看>>
scala(1)----windows环境下安装scala以及idea开发环境下配置scala
查看>>
zookeeper(3)---zookeeper API的简单使用(增删改查操作)
查看>>
zookeeper(4)---监听器Watcher
查看>>
mapReduce(3)---入门示例WordCount
查看>>
hbase(3)---shell操作
查看>>