jQuery有data()方法可以获取到自定义的元素节点,而原生JS获取则要用到querySelector以及querySelectorAll这两个方法。
用代码写一下。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>js获取自定义属性的元素</title>
</head>
<body>
<div data-id='123'>123</div>
<div data-id='123'>456</div>
<div data-id='123'>789</div>
<div data-id='123'>1000</div>
</body>
</html>
<script type="text/javascript">
//querySelector只能获取到第一个匹配的元素
let ele=document.querySelector('[data-id="123"]');
console.log(ele.length);
console.log(ele.innerHTML);
//querySelectorAll可以获取到多个匹配的值,如果只有一个,可以通过下标[0]来取值
let elelist = document.querySelectorAll('[data-id="123"]');
console.log(elelist.length);
console.log(elelist[0].innerHTML);
console.log(elelist[1].innerHTML);
console.log(elelist[2].innerHTML);
console.log(elelist[3].innerHTML);
</script>