引言

 

查找元素是前端中用的非常多的方法,工作中做项目的话也会经常用到,下面就总结归纳一下js以及jq的查找元素的方法吧。

正文

 

一.  js获取元素方法归纳

1.  通过id获取

document.getElementById('id')  //根据id获取

2.  通过name获取

document.getElementByName('name')  // 通过name属性获取

3.  通过className获取

document.getElementsByClassName('className') // 通过class的名称获取

4.  通过tagName获取

document.getElementsByTagName('tagName')  // 通过标签名获取

5.  通过css选择器querySelector()获取一个满足条件的元素

如果不知道css选择器的话,请看CSS选择器参考手册:https://www.runoob.com/cssref/css-selectors.html

document.querySelector('css选择器')

// 例子

document.querySelector('#demo')  // 获取 id = demo 的元素

document.querySelector('.demo')  // 获取 clss = demo 的元素

document.querySelector('p')      // 获取第一个 <p> 元素

document.querySelector('a[target]')  // 获取文档中第一个有target属性的 <a> 元素

注意:此方法只能获取一个元素,若有多个,则返回第一个

 

6.   通过css选择器querySelectorAll()获取所有满足条件的元素

elementList = document.querySelectorAll('selectors')

// 返回一个 NodeList 类型的对象集合,可以遍历获取每一个元素,也可以通过下标直接获取某个元素

前面4种方法比较常规,也是大多数人都知道的几种方式,重点提一下后面两种,通过css选择器获取元素的方法:

querySelector() 可以根据自定义属性获取元素,工作中也常有用到。

举个栗子:

// 这里有一个有自定义属性的标签

<div data-uuid = '123456'></div>

// 那么当文档中div很多的时候,就只能通过css选择器获取了


// 获取方法:

document.querySelector("div[data-uuid='123456']")

 querySelector() 参考手册:https://www.runoob.com/jsref/met-document-queryselector.html

querySelectorAll() 参考手册:https://www.runoob.com/jsref/met-document-queryselectorall.html

 

二.  jq获取元素方法归纳

 jq 获取元素的方法细分的话,可以分很多种,这里只是粗略的总结~

1.  通过id获取

$('#id')  // 通过id获取

2.  通过class获取

$('.className')  // 通过class名称获取

3.  通过标签名获取

$('div')  // 获取所有的 <div> 元素

4.  通过属性获取

$('[attribute = value]'

// 举个栗子

$('[data-uuid = 123456]')  // 获取所有满足条件的元素

//注意:这里返回的是集合!不能直接用!



// 如果元素唯一,可以直接通过下标获得(data-uuid就是唯一的,这里只是演示乱打的)

$('[data-uuid = 123456]')[0]  // 获得该元素

总结