1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 15.DOM(文档对象模型)-自定义属性操作

15.DOM(文档对象模型)-自定义属性操作

时间:2019-08-14 20:35:00

相关推荐

15.DOM(文档对象模型)-自定义属性操作

目录

1. 获取属性值

1) element.属性

2) element.getAttribute('属性')

2. 设置元素属性值

1)element.属性 = '值'

2)element.setAttribute('属性','值')

3. 移除元素的属性 removeAttribute('属性')

tab栏切换案例

4. H5自定义属性

var div = document.querySelector('div');

1. 获取属性值

1) element.属性

获取内置属性值(元素本身自带的)

console.log(div.id);

2) element.getAttribute('属性')

获取自定义的属性, 指的是程序员自己添加的属性

console.log(div.getAttribute('id'));

console.log(div.getAttribute('index'));

2. 设置元素属性值

1)element.属性 = '值'

设置内置元素属性值

div.id = 'test';

div.className = 'naves';

2)element.setAttribute('属性','值')

设置内置对象的属性值

div.setAttribute('index', 2);

div.setAttribute('class', 'footer');

3. 移除元素的属性 removeAttribute('属性')

div.removeAttribute('index');

tab栏切换案例

tab切换分为两个大的步骤

1)头部切换模块,点击某一个,当前的底色切换成红色,其余不变,利用排他思想修改类名的方式

// 获取元素

var tab_list = document.querySelector('.tab_list');

var lis = document.querySelectorAll('li');

var items = document.querySelectorAll('.item');

// for循环给所有的li添加绑定事件

for (var i = 0; i < lis.length; i++) {

// 给每一个li设置索引号

lis[i].setAttribute('index', i);

lis[i].onclick = function() {

// 先把所有的li清楚class这个类,排他思想

for (var i = 0; i < lis.length; i++) {

lis[i].className = '';

}

// 给当前点击的按钮添加上这个类

this.className = 'current';

2、下面的显示内容模块,会随着选项卡变化,所以必须写到点击事件里面

核心思路:给li设置自定义的属性,属性值从0开始,当点击头部当航的某一个li,让下面的内容模块对应序号显示内容,其余的隐藏

var index = this.getAttribute('index');

// console.log(index);

// 排他思想,先让所有的内容模块隐藏

for (var i = 0; i < items.length; i++) {

items[i].style.display = 'none';

}

// 留下自己,点击哪一个显示哪一个内容

items[index].style.display = 'block';

}

}

4. H5自定义属性

h5规定自定义的属性 data 开头作为属性名并赋值

H5新增获取自定义属性:element.dataset.index或者element.dataset['index'] ie11以上支持

注意:

1、dataset是一个集合,里面存放了所有以data开头的自定义属性

2、如果自定义属性里面有多个-链接的单词,我们回去的时候采用驼峰命名法例如:div.dataset.listName、div.dataset['listName']

3、只能获取以data开头的自定义属性

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。