2020.10.31 Tab导航栏 自定义属性 节点操作 添加节点

Tab导航栏

自定义属性的命名

data - index
data - time

自定义属性的设置
1.在标签中设置

<p   data -index = '1'></p>

2.在scrip中设置

<script>
p.setAttribute('data-index' 1);
</script>

H5新增方法获取自定义属性的方法(只能获取data-开头的属性)
element.dataset 是所有data开头自定义属性
element.dataset.index 或者element.dataset[index] 获取的是data-index的属性值
element.dataset.listName 获取的是data-list-name的属性值

节点操作

为什么要用节点操作:节点操作在获取属性值时会更加具有逻辑性更简便
但是具有兼容性问题

节点三要素:节点类型(NodeType) 节点名称(NodeName) 节点值(nodeVode)
元素节点 nodeType = 1
属性节点 nodeType = 2
文本节点 (文字等) nodeType = 3

父节点操作

element.parentNode 得到离element最近的父级节点

子节点操作

1.element.childNode 得到离element最近的子级节点,所有节点包括属性节点,文本节点(不建议用)
注意 换行等也是节点需要筛选
2.element.children 得到只子级属性节点 (推荐)

3.获得第一个子元素节点:element.firstelementchild (兼容性问题) element.children[0];(无兼容问题)
4.获得最后一个子元素节点: element.lastelementChild(兼容性问题) element.children[ol.children-1](无兼容问题)

兄弟节点 (存在兼容性问题)

element.nextElementSibling (滴节点)
element.previousElementSibling(兄节点)

添加节点

1.创建节点
2.添加到父节点后面
element.appendElement(‘要添加的标签’)

  <script>
        //创建元素
        var li = document.createElement('li');
        //只能用qurrySelector获取节点
        var div = document.querySelector('div');
        //添加子节点
        div.appendChild(li);
    </script>

1.创建节点
2添加到任意元素的前面
div.insertBefore(要添加的元素,添加到那个元素前面);

//将节点添加到任意位置
        var lili = document.createElement('li');
        div.insertBefore(lili, div.children[0]);

删除节点

removeChild()

阻止链接跳转:href=‘javascript:;’

复制节点

 //复制节点
        var p = div.children[2].cloneNode(); //浅拷贝:只复制标签不复制内容

        div.appendChild(p);
        //深拷贝:既复制标签,又复制内容
        var p2 = div.children[2].cloneNode(true);
        div.appendChild(p2);

//
/
/
/

创建标签,元素

1.父标签(元素).innerHtml= 值 或者标签;

<script>
        var div = document.querySelector('div');
        div.innerHTML = '<a href ="#">百度</a>';
    </script>

2.var li = document.createElement(‘li’);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值