元素:页面中所有的标签,元素---element, 标签----元素---对象
节点:页面中所有的内容(标签,属性,文本(文字,换行,空格,回车)),Node
节点的属性:(可以使用标签--元素.出来,可以使用属性节点.出来,文本节点.点出来)
* nodeType:节点的类型:1表示标签,2表示属性,3表示文本
* nodeName:节点的名字:标签节点---大写的标签名字,属性节点---小写的属性名字,文本节点----#text
* nodeValue:节点的值:标签节点---null,属性节点---属性值,文本节点---文本内容
获取相关节点与元素的代码(含注释):
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>title</title>
</head>
<body>
<div id="dv">哦哦
<span>这是div中的第一个span标签</span>
<p>这是div中的第二个元素,第一个p标签</p>
<ul id="uu">
<li>乔峰</li>
<li>鹿茸</li>
<li id="three">段誉</li>
<li>卡卡西</li>
<li>雏田</li>
</ul>
</div>
<script src="common.js"></script>
<script>
//12行代码:都是获取节点和元素的
//ul
var ulObj=document.getElementById("uu");
//父级节点
console.log(ulObj.parentNode);
//父级元素
console.log(ulObj.parentElement);
//子节点
console.log(ulObj.childNodes);
//子元素
console.log(ulObj.children);
console.log("==============================================");
//第一个子节点
console.log(ulObj.firstChild);//------------------------IE8中是第一个子元素
//第一个子元素
console.log(ulObj.firstElementChild);//-----------------IE8中不支持
//最后一个子节点
console.log(ulObj.lastChild);//------------------------IE8中是第一个子元素
//最后一个子元素
console.log(ulObj.lastElementChild);//-----------------IE8中不支持
//某个元素的前一个兄弟节点
console.log(my$("three").previousSibling);
//某个元素的前一个兄弟元素
console.log(my$("three").previousElementSibling);
//某个元素的后一个兄弟节点
console.log(my$("three").nextSibling);
//某个元素的后一个兄弟元素
console.log(my$("three").nextElementSibling);
//总结:凡是获取节点的代码在谷歌和火狐得到的都是 相关的节点
//凡是获取元素的代码在谷歌和火狐得到的都是 相关的元素
//从子节点和兄弟节点开始,凡是获取节点的代码在IE8中得到的是元素,获取元素的相关代码,在IE8中得到的是undefined----元素的代码,iE中不支持
// var ulObj=document.getElementById("uu");
//
//
// console.log("==============================================");
// //第一个子节点
// console.log(ulObj.firstChild.innerText);//------------------------IE8中是第一个子元素
// //第一个子元素
// console.log(ulObj.firstElementChild);//-----------------IE8中不支持
// //最后一个子节点
// console.log(ulObj.lastChild.innerText);//------------------------IE8中是第一个子元素
// //最后一个子元素
// console.log(ulObj.lastElementChild);//-----------------IE8中不支持
// //某个元素的前一个兄弟节点
// console.log(my$("three").previousSibling.innerText);
// //某个元素的前一个兄弟元素
// console.log(my$("three").previousElementSibling);
// //某个元素的后一个兄弟节点
// console.log(my$("three").nextSibling.innerText);
// //某个元素的后一个兄弟元素
// console.log(my$("three").nextElementSibling);
//
</script>
</body>
</html>