美文网首页
DOM获取元素的方法

DOM获取元素的方法

作者: 从这到那 | 来源:发表于2017-04-17 23:28 被阅读0次

操作DOM时我们经常需要获取元素,这里总结一下获取元素的方法

方法名 参数 特点
document.getElementById(id) ID 返回单个对象
document.getElementsByClassName(names) class名称 返回集合
document.getElementsByName(name) 元素name属性 返回集合
document.getElementsByTagName(tagName) 标签名 返回集合
document.querySelector(selectors) CSS选择器 返回单个对象
document.querySelectorAll(selectors) CSS选择器 返回集合

document.getElementById()

返回一个匹配特定 ID的元素.

语法

element = document.getElementById(id)

参数

  • element是一个 Element 对象。如果当前文档中拥有特定ID的元素不存在则返回null.
  • id是大小写敏感的字符串,代表了所要查找的元素的唯一ID.

示例

<!DOCTYPE html>
<html>
<head>
  <title>getElementById example</title>
  <script>
  function changeColor(newColor) {
    var elem = document.getElementById("para1");
    elem.style.color = newColor;
  }
  </script>
</head>
<body>
  <p id="para1">Some text here</p>
  <button onclick="changeColor('blue');">blue</button>
</body>
</html>

document.getElementsByClassName()

返回一个类似数组的对象,包含了所有指定 class 名称的子元素。当调用发生在document对象上时, 整个DOM都会被搜索, 包含根节点。你也可以在任意元素上调用getElementsByClassName() 方法,它将返回的是以当前元素为根节点,所有指定class名称的子元素。

语法

var elements = document.getElementsByClassName(names); // or: var elements = rootElement.getElementsByClassName(names);

参数

  • elements 是查找到的所有元素的集合 HTMLCollection .
  • names 是一个字符串,表示用于匹配的 class 名称列表; class 名称通过空格分隔
  • getElementsByClassName 可以在任意的元素上调用,不仅仅是 document。 调用这个方法的元素将作为本次查找的根元素.

示例

document.getElementsByClassName('test');
 //class同时包括red和test
document.getElementsByClassName('red test');
 //在id 为'main'的元素的子节点中,获取所有class为'test'的元素
document.getElementById('main').getElementsByClassName('test');

document.getElementsByName()

根据给定的name 返回一个在 (X)HTML document的节点列表集合。

语法

elements = document.getElementsByName(name) 

参数

  • elements 是一个 NodeList 集合。
  • name 是元素的 name 属性的值。

示例

<!DOCTYPE html>
<html lang="en">
<head>
 ...
</head>

<body>
<form name="up"><input type="text"></form>
<div name="down"><input type="text"></div>

<script>
var up_forms = document.getElementsByName("up");
console.log(up_forms[0].tagName); // returns "FORM"
</script>
</body>
</html>

document.getElementsByTagName()

返回带有指定标签名的对象的集合.

语法

elements = element.getElementsByTagName(tagName)

参数

tagName 必须放在引号中

示例

<!DOCTYPE html>
<html>
<head>
...
</head>
<body>
<ul><li>Coffee</li><li>Tea</li></ul>
<p id="demo">单击“按钮”更改列表项的文本。</p>
<button onclick="myFunction()">点我</button>
<script>
function myFunction(){
    var list=document.getElementsByTagName("UL")[0]
    list.getElementsByTagName("LI")[0].innerHTML="Milk";
};
</script>
</body>
</html>

document.querySelector()

querySelector() 方法返回文档中匹配指定 CSS 选择器的一个元素。

语法

element = document.querySelector(selectors)

参数

selectors: css选择器

示例

  //获取文档中第一个 <p> 元素:
  document.querySelector("p")
  //获取文档中 class="example" 的第一个元素:
  document.querySelector(".example");
  //获取文档中 class="example" 的第一个 <p> 元素:
  document.querySelector("p.example");
  //获取文档中有 "target" 属性的第一个 <a> 元素:
  document.querySelector("a[target]");
  

document.querySelectorAll()

语法

elementList = document.querySelectorAll(selectors);

参数

获取的是一个集合

selectors为css选择器

示例

//返回一个文档中所有的class为"note"或者 "alert"的div元素
var matches = document.querySelectorAll("div.note, div.alert");

相关文章

  • JavaScript获取dom元素

    获取dom元素的方法 通过标签名获取dom元素 通过id名获取dom元素 通过类名获取元素 HTML5新方法 通过...

  • 元素对象和选择器

    html dom树 通过获取dom节点的方法获取到 元素对象 还能通过console.dir(元素对象) 打印出元...

  • 0713-JS(九九乘法表,DOM)

    DOM: 全称;document object model DOM中获取元素的方法 1.id获取:var oDi...

  • 从零开始DOM的学习总结

    DOM core中 获取元素的方法 getElementById 通过元素的id属性获取对象 getElement...

  • 歌手页面右边shortcut的实现

    数据的获取(listview.vue) 获取index元素的方法封装(dom/js/dom.js) 给scroll...

  • 2018-09-27--01

    DOM获取元素的方法(8个) DOM:document object model 文档对象模型 在DOM中,提供了...

  • jQuery 选择器

    使用jQuery获取元素 我们可以通过document.getElementById等方法获取DOM对象,但是方法...

  • jQuery选择器

    使用jQuery获取元素 我们可以通过document.getElementById等方法获取DOM对象,但是方法...

  • javascript的基本元素获取以及循环

    js中的元素获取: 在使用js元素获取时,我们实际上使用的是dom方法获取,基本的获取方法分为四种:1、利用元素i...

  • DOM-BOM-EVENT(2)

    2.获取DOM元素的方法 #2.1.getElement系列 documentElementById 通过id获取...

网友评论

      本文标题:DOM获取元素的方法

      本文链接:https://www.haomeiwen.com/subject/civxzttx.html