JS 节点的属性 与 元素
2024-09-04 15:04:32
节点的属性{
nodeType 是节点的类型;
nodeNam 是节点的名字
nodeValue 节点的值
}可以用节点.属性 取得三个属性的值
节点.nodeType 出来的结果代表类型、如果是:
如果是:数字1 那么代表这个节点是个标签节点类型;
如果是:数字2 那么代表这个节点是个属性节点类型;
如果是:数字3 那么代表这个节点是个文本节点类型;
节点.nodeNam 出来的结果是节点名字、
如果是:大写的标签、 那么代表这个节点是个标签节点;
如果是:小写的属性名、 那么代表这个节点是个属性节点;
如果是:#text、 那么代表这个节点是个文本节点;
节点.nodeValue 出来的结果是节点的值、
如果是:null、 那么代表这个节点是个标签节点;
如果是:属性的值、 那么代表这个节点是个属性节点;
如果是:文本的内容、 那么代表这个节点是个文本节点;
如下图的HTML:
<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>
结果:
var dvObj=document.getElementById("uu");
// 获取里面的每个子节点
// for(var i=0;i<dvObj.childNodes.length;i++){
// var node=dvObj.childNodes[i];
// console.log('节点的类型:'+node.nodeType+' '+"节点的名字:"+node.nodeName+' '+"节点的值:"+node.nodeValue);
// }
var liobj=document.getElementById('three');
console.log(liobj.nodeType+' '+liobj.nodeName+' '+liobj.nodeValue)
// 1 LI null
// 1 代表这个节点是标签类型
// LI 代表这个节点是属性名字
// null 代表这个节点是标签节点
获取相关的节点:
//12行代码:都是获取节点和元素的 //取得 ul整个节点
var ulObj=document.getElementById("uu");
//节点.parentNode:取得父级节点
console.log(ulObj.parentNode); // 整个div的内容 //节点.parentElement 取得父级元素
console.log(ulObj.parentElement); //整个div的内容(跟节点一样) //节点 .childNodes 取得子节点
console.log(ulObj.childNodes); // NodeList(11) 里面是11个子节点 (5个li 6个空格) //节点.children 取得子元素
console.log(ulObj.children);// HTMLCollection(5) 元素只能是标签(5个li标签) //节点..firstChild 取得第一个子节点
console.log(ulObj.firstChild);//------------------------#text 是一个文本节点 在IE8中是第一个子元素 //节点.firstElementChild 取得第一个子元素
console.log(ulObj.firstElementChild);//----------------- <li>乔峰</li> 注意在IE8中不支持 // 节点.lastChild 取得最后一个子节点
console.log(ulObj.lastChild);//------------------------#text 是一个文本节点 IE8中是第一个子元素 // 节点.lastElementChild 取得最后一个子元素
console.log(ulObj.lastElementChild);//-----------------<li>雏田</li> 注意在IE8中不支持 //某个元素的前一个兄弟节点
console.log(my$("three").previousSibling); // #text 是一个文本节点 //某个元素的前一个兄弟元素
console.log(my$("three").previousElementSibling);// <li>鹿茸</li> //某个元素的后一个兄弟节点
console.log(my$("three").nextSibling);// #text 是一个文本节点 //某个元素的后一个兄弟元素
console.log(my$("three").nextElementSibling);// <li>卡卡西</li> //总结:
凡是获取节点的代码在谷歌和火狐得到的都是 相关的节点
凡是获取元素的代码在谷歌和火狐得到的都是 相关的元素
从子节点和兄弟节点开始,凡是获取节点的代码在IE8中得到的是元素,获取元素的相关代码,在IE8中得到的是undefined----元素的代码,iE中不支持
最新文章
- C#中调用python方法
- No handlers could be found for logger ";keystoneauth.identity.generic.base";
- Oracle 数据操作
- IconFont和FontAwesome的区别?
- Silverlight项目笔记4:初识Prism以及IoC
- [ES4封装教程]3.使用 Easy Sysprep v4 封装 Windows 7
- (一)SecureCRT连接虚拟机linux
- 黄聪:WordPress 备案期间临时关闭站点设置404
- hdu 5755 2016 Multi-University Training Contest 3 Gambler Bo 高斯消元模3同余方程
- C语言char s[] 和 char *s的差别
- - (void)addAnimation:(CAAnimation *)anim forKey:(nullable NSString *)key; 方法浅析
- JavaSE项目之聊天室
- java.lang.SecurityException: Prohibited package name:
- 使用Visual Studio Code进行ABAP开发
- SpringCloud(5)路由网关Spring Cloud Zuul
- 使用sparksql往kafka推送数据
- 使用JS调用手机本地摄像头或者相册图片识别二维码/条形码
- c/c++动态内存分配的区别
- select2插件使用小记
- 网络广告CPS/CPC/CPV/CPM/CPA分别是什么意思
热门文章
- 转&;nbsp;-ALSA&;nbsp;配置
- Linux下安装Python2.7
- spring注解开发的准备工作
- Leetcode:Longest Palindromic Substring分析和实现
- 值得一做》关于双标记线段树两三事BZOJ 1798 (NORMAL-)
- ArcGIS Engine中如何获取Map中已经选择的要素呢(转)
- mongo_1 新手之路
- JavaScript(JS)实现省市联动选择下拉列表
- lunix tomcat重启脚步
- 关于前端XSS攻击、短信轰炸等问题