js文档节点关系
这一节简单介绍一下文档节点方面的相关内容:
一:获得节点关系的属性
1、获得该元素父节点的引用:obj.parentNode;
<div class="content">
<p class="img1"><img src="img/lingzhiling.jpg" /></p>
<p class="img2"><img src="img/yufeihong.jpg" /></p>
</div>
<script type="text/javascript">
var content = document.getElementsByClassName('content')[0];
var img1 = document.getElementsByClassName('img1')[0];
var img2 = document.getElementsByClassName('img2')[0];
// 获得父节点的引用
img1.onclick = function() {
this.innerHTML = this.parentNode.className;
}
</script>
2、获得该对象的子节点的集合obj.childNodes;
注意:元素中的空格被视为文本,而文本被视为节点
提示:您可以使用 length 属性来确定子节点的数量,以NodeList为对象,然后您就能够遍历所有的子节点并提取您需要的信息。
<div class="content">
<p class="img1"><img src="img/lingzhiling.jpg" /></p>
<p class="img2"><img src="img/yufeihong.jpg" /></p>
</div>
<script type="text/javascript">
var content = document.getElementsByClassName('content')[0];
var img1 = document.getElementsByClassName('img1')[0];
var img2 = document.getElementsByClassName('img2')[0];
// 获得子节点的集合
var childs = content.childNodes; // 元素中的空格被视为文本,而文本被视为节点。
</script>
3、返回该对象的第一个子节点的引用:obj.firstChild;
注释:在 HTML 中,文本本身是 HTML 元素的父节点,HEAD 和 BODY 是 HTML 元素的子节点。以Node为对象
<div class="content">
<p class="img1"><img src="img/lingzhiling.jpg" /></p>
<p class="img2"><img src="img/yufeihong.jpg" /></p>
</div>
<script type="text/javascript">
var content = document.getElementsByClassName('content')[0];
var img1 = document.getElementsByClassName('img1')[0];
var img2 = document.getElementsByClassName('img2')[0];
/*获得第一个子节点的引用*/
img2.onclick = function(){
console.log(content.firstChild.nextElementSibling);
this.innerHTML = document.firstChild.nodeName;
}
</script>
4、返回列表中最后一个子节点;obj.lastChild
注释:lastChild 属性返回指定节点的最后一个子节点,以 Node 对象。
5、获得下一个兄弟节点的引用:obj.nextSibling
注释:元素中的空格被视作文本,而文本被视作文本节点。请尝试在两个 <p> 元素之间添加空格,结果将是 "undefined"。如果没有 nextSibling 节点,则返回值为 null。
<div class="content">
<p class="img1"><img src="img/lingzhiling.jpg" /></p><p class="img2"><img src="img/yufeihong.jpg" /></p><p class="text1">第一个</p><p class="text2">第二个</p>
</div>
<script type="text/javascript">
var content = document.getElementsByClassName('content')[0];
var img1 = document.getElementsByClassName('img1')[0];
var img2 = document.getElementsByClassName('img2')[0];
/*获得下一个兄弟节点的引用*/
img1.onclick = function(){
img1.innerHTML = img1.nextSibling.className;
}
</script>
6、获得上一个兄弟节点的引用:obj.previousSibling ;
js文档节点关系的更多相关文章
- js文档节点
一.创建节点: 1.创建元素节点:document.createElement("元素标签名"); 此方法可返回一个 Element 对象 <!DOCTYPE html> ...
- jQuery文档节点处理,克隆,each循环,动画效果,插件
文档节点处理 //创建一个标签对象 $("<p>") //内部插入 $("").append(content|fn) ----->$(&quo ...
- 深入理解DOM节点类型第七篇——文档节点DOCUMENT
× 目录 [1]特征 [2]快捷访问 [3]文档写入 前面的话 文档节点document,隶属于表示浏览器的window对象,它表示网页页面,又被称为根节点.本文将详细介绍文档节点document的内 ...
- gulpfile.js文档
gulp watch 实现监听不仅需要package.json文档,还需要gulpfile.js文档.否则无法实现. 1.gulp的安装 1.1 首先必须先安装node.js.这个可以参考之前的博客& ...
- 使用node.js 文档里的方法写一个web服务器
刚刚看了node.js文档里的一个小例子,就是用 node.js 写一个web服务器的小例子 上代码 (*^▽^*) //helloworld.js// 使用node.js写一个服务器 const h ...
- java中XML操作:xml与string互转、读取XML文档节点及对XML节点增删改查
一.XML和String互转: 使用dom4j程式变得很简单 //字符串转XML String xmlStr = \"......\"; Document document = D ...
- 使用YUIDoc生成JS文档
其实YUIDoc主页已经写的比较清晰了,但有一些概念和细节再点出一些注意的地方. 目前最新的YUIDoc使用nodejs进行开发安装和使用都非常的方便. 我们只需要将我们的代码加上必要的注释,便可以很 ...
- solr schema.xml文档节点配置
首先,讲解一下/usr/local/solr/collection1/conf/schema.xml的配置,此文档功能类似于配置索引数据库. Field:类似于数据库字段的属性(此文统一使用用“字段” ...
- Java获取XML节点总结之读取XML文档节点
dom4j是Java的XML API,用来读写XML文件的.目前有很多场景中使用dom4j来读写xml的.要使用dom4j开发,需要下载导入dom4j相应的jar文件.官网下载:http://www. ...
随机推荐
- 【转】Android逆向入门流程
原文:https://www.jianshu.com/p/71fb7ccc05ff 0.写在前面 本文是笔者自学笔记,以破解某目标apk的方式进行学习,中间辅以原理性知识,方便面试需求. 参考文章的原 ...
- net core体系-web应用程序-4net core2.0大白话带你入门-10asp.net core session的使用
asp.net core session的使用 Session介绍 本文假设读者已经了解Session的概念和作用,并且在传统的.net framework平台上使用过. Asp.net core ...
- img 标签的 usemap 属性
<img src="1.gif" alt="Planets" usemap="#Map"/> <map name=&quo ...
- Python select解析
一.首先列一下,sellect.poll.epoll三者的区别 1.select a.select最早于1983年出现在4.2BSD中,它通过一个select()系统调用来监控多个文件描述符的数组,当 ...
- Python hasattr,getattr,setattr,delattr
#!/usr/bin/env python # -*- coding:utf-8 -*- # 作者:Presley # 邮箱:1209989516@qq.com # 时间:2018-11-04 # 反 ...
- POJ1459 Power Network 网络流 最大流
原文链接http://www.cnblogs.com/zhouzhendong/p/8326021.html 题目传送门 - POJ1459 题意概括 多组数据. 对于每一组数据,首先一个数n,表示有 ...
- 关系网络数据可视化:3. 案例:公司职员关系图表 & 导演演员关系网络可视化
1. 公司职员关系图表 节点和边界数据 节点是指每个节点本身的数据,代表公司职工的名称:属性(Country).分类(Category)和地区(Region,给每个节点定义的属性数据).文件必须是.c ...
- datetime库运用
1. date(),time(),datetime() 时间数据概用: 2. datetime.datetime.now() 获取当前时间 datetime.datetime.utcnow() 获取格 ...
- dubbo spring bean id冲突
service-security-provider应用有provider和consumer配置文件 其中secutrity-consumer引用两个服务 <dubbo:reference int ...
- Flume的概述和安装部署
一.Flume概述 Flume是一种分布式.可靠且可用的服务,用于有效的收集.聚合和移动大量日志文件数据.Flume具有基于流数据流的简单灵活的框架,具有可靠的可靠性机制和许多故障转移和恢复机制,具有 ...