HTML内容
<div id="head">
<div class="head_wrapper">1</div>
<div class="headBlock">2</div>
</div>
原生JS获取节点
在这里推荐使用element元素的方法
因为节点得到的是一个节点集合
//得到全部子节点childNodes
document.getElementById('head').childNodes
//NodeList(5) [text, div.head_wrapper, text, div.headBlock, text]
//得到父节点
document.querySelector('.head_wrapper').parentNode
//下一个兄弟节点
document.querySelector('.head_wrapper').nextSibling
//上一个兄弟节点
document.querySelector('.headBlock').previousSibling
//第一个子节点
document.getElementById('head').firstChild
//最后一个子节点
document.getElementById('head').lastChild
//是否有子节点
document.getElementById('head').hasChildNodes()
//得到父级元素
document.querySelector('.head_wrapper').parentElement
//<div id="head"></div>
//下一个兄弟元素
document.querySelector('.head_wrapper').nextElementSibling
//<div class="headBlock"></div>
//上一个兄弟元素
document.querySelector('.headBlock').previousElementSibling
//<div class="head_wrapper"></div>
//第一个子元素
document.getElementById('head').firstElementChild
//<div class="head_wrapper"></div>
//最后一个子元素
document.getElementById('head').lastElementChild
//<div class="headBlock"></div>
//是否有子元素
document.getElementById('head').children.length == 0
//false
//获取该节点下的所有文本
document.getElementById('head').textContent
//1,2
//获取该节点下的文本
document.getElementById('head').innerText
//1,2
原生JS Class 增删改查
//添加Class
document.getElementById('head').classList.add('add') //('add1','add2')
//<div id="head" class="add"></div>
//删除Class
document.getElementById('head').classList.remove('add')
//<div id="head"></div>
//切换class toggle
document.getElementById('head').classList.toggle('add')
//打印true 代表添加成功,<div id="head" class="add"></div>
//打印false为删除成功, <div id="head"></div>
//是否存在Class
document.getElementById('head').classList.contains('add')
//返回 true和false
//返回类名在元素中的索引值。索引值从 0 开始。
<div id="head" class="add remove"></div>
document.getElementById('head').classList.item(1)
//remove
原生JS 属性设置和获取
//属性元素
document.getElementById('head').setAttribute('set', 'value');
//<div id="head" set='value'></div>
//获取属性
document.getElementById('head').getAttribute('set')
//"value" 不存在为null
原生JS DOM增删
//已有元素前插入元素insertBefore
<ul id="box">
<li>001</li>
</ul>
var newItem=document.createElement("li")
var lis=document.getElementsByTagName("li");
var curItem = document.getElementById('box')
newItem.innerHTML="002";
curItem.insertBefore(newItem,lis[0]);
//<ul id="box">
// <li>002</li>
// <li>001</li>
//</ul>
//已有元素内追加元素appendChild
<ul id="box">
<li>001</li>
</ul>
var newItem=document.createElement("li")
var curItem = document.getElementById('box')
newItem.innerHTML="002";
curItem.appendChild(newItem);
//<ul id="box">
// <li>001</li>
//</ul>