nextSibling 和nextElementSibling的区别[通俗易懂]

nextSibling 和nextElementSibling的区别[通俗易懂]使用nextSibling属性返回指定节点之后的下一个兄弟节点,(即:相同节点树层中的下一个节点)。nextSibling属性与nextElementSibling属性的差别: nextSibling属性返回元素节点之后的兄弟节点(包括文本节点、注释节点即回车、换行、空格、文本等等); nextElementSibling属性只返回元素节点之后的兄弟元素节点(不包括文本节点、注释节点);注意:空…

大家好,又见面了,我是你们的朋友全栈君。

使用nextSibling属性返回指定节点之后的下一个兄弟节点,(即:相同节点树层中的下一个节点)。

nextSibling属性与nextElementSibling属性的差别: 
nextSibling属性返回元素节点之后的兄弟节点(包括文本节点、注释节点即回车、换行、空格、文本等等); 
nextElementSibling属性只返回元素节点之后的兄弟元素节点(不包括文本节点、注释节点);

注意: 空格、回车也会看作文本,以文本节点对待。 
下例中,如果两个li元素之间有空格、回车,将返回 “undefined”。

今天犯了个很蛋疼的错误,调试了半天,才发现在input 与font 标签之间多了个回车。(中间不应有任何内容,包括,回车,换行)

<input type="text" name="username" onblur="checkName();" /><font></font>
  • 1

解决方法1:去掉中间多余的内容,input的nextSibling就是font结点 

解决办法2:用input 的nextElementSibling 方法,得到的就是font结点

<center>
<table>
<tr>
<td><input type=”button” value=”-” id=”c1″ οnclick=”a(this)”/></td>
<td><span>1</span></td>
<td><input type=”button” value=”+” id=”c2″ οnclick=”s(this)”/></td>
</tr>
</table>
</center>
<script type=”text/javascript”>
function a(obj){

var x = obj.parentNode.nextElementSibling;
var x1 =  x.getElementsByTagName(‘span’)[0];
if(parseInt(x1.innerHTML) > 0){

x1.innerHTML = parseInt(x1.innerHTML)-1;
}
}
function s(obj){

var x = obj.parentNode.previousElementSibling;
console.log(x);
var x1 =  x.getElementsByTagName(‘span’)[0];
x1.innerHTML = parseInt(x1.innerHTML)+1;
}
</script>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158696.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月13日 下午8:16
下一篇 2022年7月13日 下午8:36


相关推荐

  • 智能优化算法回顾

    智能优化算法回顾mark一下,感谢作者分享。当年在毕设的时候研究智能优化算法,工作中偶尔也会写些demo,今天看到这篇文章,赶紧收藏。优化算法有很多,经典算法包括:有线性规划,动态规划等;改进型局部搜索算法包括爬山法,最速下降法等,模拟退火、遗传算法以及禁忌搜索称作指导性搜索法。而神经网络,混沌搜索则属于系统动态演化方法。梯度为基础的传统优化算法具有较高的计算效率、较强的可靠性、比较成熟等优点,是一类最重…

    2022年5月23日
    37
  • 正则表达式

    正则表达式今天看到了正则表达式,就再来重新巩固一遍啦~~~因为一些东西我都知道啦,所以就写了一个代码,将所发生的情况都试一试,还是直接上手知识来的更快呀一些功能必要说明都在注释里测试代码1import

    2022年7月3日
    21
  • flex 词法分析_c语言词法分析器的简单实现

    flex 词法分析_c语言词法分析器的简单实现为什么80%的码农都做不了架构师?>>>…

    2025年7月10日
    5
  • USB OTG简单介绍

    USB OTG简单介绍

    2021年12月14日
    53
  • fiddler和charles哪个好用_电脑15分钟自动重启

    fiddler和charles哪个好用_电脑15分钟自动重启前言Charles是收费软件,可以免费试用30天。试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过30分钟,并且启动时将会有10秒种的延时。此时,我们只需网上找一个注册码即可解

    2022年7月28日
    13
  • 排列与组合的一些定理教案_平行轴定理推导

    排列与组合的一些定理教案_平行轴定理推导一,加法原理与乘法原理加法原理与乘法原理是排列与组合的基础。加法原理本质上是分类,乘法原理本质上是分步。分类,就是把一个集合(某事物)分成互不相交的若干独立的部分。比如,概率论中的全概率公式就将事

    2022年8月6日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号