一、获取元素的属性值
- element.属性
- element.getAttribute('属性');
区别:
element.属性 : 获取内置属性值(元素本身自带的属性)
element.getAttribute(‘属性’); 主要获得自定义的属性 (标准) 我们自定义的属性
二、 设置元素的属性值
- element.属性 = ‘值’
- element.setAttribute('属性', '值');
区别:
element.属性: 设置内置属性值
element.setAttribute(‘属性’); 主要设置自定义的属性 (标准)
三、 移除元素的属性
element.removeAttribute('属性');
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title>
</head><body><div id="demo" index="1" class="nav"></div><script>var div = document.querySelector('div');// 1. 获取元素的属性值// (1) element.属性console.log(div.id);//(2) element.getAttribute('属性') get得到获取 attribute 属性的意思 我们程序员自己添加的属性我们称为自定义属性 indexconsole.log(div.getAttribute('id'));console.log(div.getAttribute('index'));// 2. 设置元素属性值// (1) element.属性= '值'div.id = 'test';div.className = 'navs';// (2) element.setAttribute('属性', '值'); 主要针对于自定义属性div.setAttribute('index', 2);div.setAttribute('class', 'footer'); // class 特殊 这里面写的就是class 不是className// 3 移除属性 removeAttribute(属性) div.removeAttribute('index');</script>
</body></html>
四、H5自定义属性
自定义属性获取是通过getAttribute(‘属性’) 获取。 但是有些自定义属性很容易引起歧义,不容易判断是元素的内置属性还是自定义属性。 H5给我们新增了自定义属性。
自定义属性目的:是为了保存并使用数据。有些数据可以保存到页面中而不用保存到数据库中。
4.1. 设置H5自定义属性
H5规定自定义属性 data- 开头做为属性名并且赋值。 比如 <div data-index=“1”></div> 或者使用 JS 设置 element.setAttribute(‘data-index’, 2)
4.2. 获取H5自定义属性
- 兼容性获取 element.getAttribute(‘data-index’);
- H5新增 element.dataset.index 或者 element.dataset[‘index’] ie 11才开始支持
参考:黑马程序员
仅做本人学习之用