nextSibling 属性可返回某个节点之后紧跟的节点(处于同一树层级中)previousSibling 属性可返回某个节点之前紧跟的节点(处于同一树层级中)。

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>nextSibling</title>
</head>
<body>
<ul id="u1">
<li id="a">javascript</li>
<li id="b">jquery</li>
<li id="c">html</li>
</ul>
<ul id="u2">
<li id="d">css3</li>
<li id="e">php</li>
<li id="f">java</li>
</ul>
<script type="text/javascript">
function get_nextSibling(n){
var x=n.nextSibling;
while (x && x.nodeType!=1){
x=x.nextSibling;
}
return x;
}
function get_previousSibling(n){
var a=n.previousSibling;
while (a && a.nodeType!=1){
a=a.previousSibling;
}
return a;
}

var x=document.getElementsByTagName("li")[0];
document.write(x.nodeName);
document.write(" = ");
document.write(x.innerHTML);

var y=get_nextSibling(x);

if(y!=null){
document.write("<br />nextsibling: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.innerHTML);
}else{
document.write("<br>已经是最后一个节点");
}

var a=document.getElementsByTagName("li")[2];
document.write("<br/>"+a.nodeName);
document.write("=");
document.write(a.innerHTML);

var b=get_previousSibling(a);

if(b!=null){
document.write("<br/>previoussibling:");
document.write(b.nodeName);
document.write("=");
document.write(b.innerHTML);
}
else{
document.write("<br/>已经是第一个节点");
}
</script>
</body>
</html>

时间: 2024-08-23 05:54:11

nextSibling 属性可返回某个节点之后紧跟的节点(处于同一树层级中)previousSibling 属性可返回某个节点之前紧跟的节点(处于同一树层级中)。的相关文章

js nextSibling属性和previousSibling属性概述及使用注意

1:nextSibling属性 该属性表示当前节点的下一个节点(其后的节点与当前节点同属一个级别):如果其后没有与其同级的节点,则返回null. 需要特别注意的是:该属性在不同的浏览器中的执行结果并不都相同,见下面例示: 先来看一个例子: 该对象的结构表面上看,div的nextSibling只有2项——两个input节点.但实际上有5项——/n,input,/n,input,/n.这是因为input作为创建各种表单输入控件的标签,无论是生成button.checkbox.radio...等或其他

动态调用WebService时动态获取返回Class中的属性

直接给代码: var ret = HTTPS.WSHelper.InvokeWebService("WebService URL", "MethodName", object[] args);var type = ret.GetType();var propertyinfo = type.GetProperty("result");if (propertyinfo == null){       throw new Exception("

spring -mvc 将对象封装json返回时删除掉对象中的属性注解方式

spring -mvc 将对象封装json返回时删除掉对象中的属性注解方式 在类名,接口头上注解使用在 @JsonIgnoreProperties(value={"comid"}) //希望动态过滤掉的属性 例 @JsonIgnoreProperties(value={"comid"}) public interface 接口名称{ } @JsonIgnoreProperties(value={"comid"}) public class 类名{

jQuery复习节点知识(1、查看(获取)和设置属性)

两个关键字  1.attr   2.prop 主要要实现获得和设置两种方式 话不多说就直接上代码: 首先是获取方式的: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>jQuery复习节点知识(1.查看(获取)和设置属性)</title> <script type="text/javasc

jQuery:length属性:是jQuery对象对应元素在document中的个数,返回值数据类型是Number

是jQuery对象对应元素在document中的个数,返回值数据类型是Number

extjs中treepanel属性和方法

1.Ext.tree.TreePanel 主要配置项: root:树的根节点.rootVisible:是否显示根节点,默认为true.useArrows:是否在树中使用Vista样式箭头,默认为false.lines:是否显示树线,默认为true.loader:树节点的加载器,默认为Ext.tree.TreeLoader. selModel:树的选择模式,默认为Ext.tree.DefaultSelectionModel.pathSeparator:树节点路径的分隔符,默认为“/”.single

(DT系列四)驱动加载中, 如何取得device tree中的属性

本文以At91rm9200平台为例,从源码实现的角度来分析驱动加载时,Device tree的属性是如何取得的.一:系统级初始化DT_MACHINE_START 主要是定义"struct machine_desc"的类型,放在 section(".arch.info.init"),是初始化数据,Kernel 起来之后将被丢弃.#define DT_MACHINE_START(_name, _namestr) \static const struct machine_

Linq to Sql:N层应用中的查询(上) : 返回自定义实体

原文:Linq to Sql:N层应用中的查询(上) : 返回自定义实体 如果允许在UI层直接访问Linq to Sql的DataContext,可以省去很多问题,譬如在处理多表join的时候,我们使用var来定义L2S查询,让IDE自动推断变量的具体类型(IQueryable<匿名类型>),并提供友好的智能提示:而且可以充分应用L2S的延迟加载特性,来进行动态查询.但如果我们希望将业务逻辑放在一个独立的层中(譬如封装在远程的WCF应用中),又希望在逻辑层应用Linq to sql,则情况就比

【转】(DT系列四)驱动加载中, 如何取得device tree中的属性

原文网址:http://www.cnblogs.com/biglucky/p/4057488.html 本文以At91rm9200平台为例,从源码实现的角度来分析驱动加载时,Device tree的属性是如何取得的.一:系统级初始化DT_MACHINE_START 主要是定义"struct machine_desc"的类型,放在 section(".arch.info.init"),是初始化数据,Kernel 起来之后将被丢弃.#define DT_MACHINE_

Python类中实例属性的通用显示工具

0.说明 以下的思想方法非常有用,可以帮助你在Python开发提高开发和维护效率,所以可能的话,请仔细琢磨一下其中的代码. 之前在用Python编写一个类时,为了显示的友好性,总是需要在每个类中重载__str__或者__repr__方法,现在有了更好的方法,不需要在每个类中都这么做了,下面给出的方法非常实用. 下面使用的例子使用的Python版本都是Python3.5,但实际上在Python2.7中进行也没有任何影响. 1.正常情况下类实例的不友好显示 在Python中编写一个类时,由于没有重载