Javascript 检查元素(DOM节点)是否为同级
如何检查两个DOM元素是否为同级 DOM结构示例:Javascript 检查元素(DOM节点)是否为同级,javascript,jquery,dom,Javascript,Jquery,Dom,如何检查两个DOM元素是否为同级 DOM结构示例: 测试是否是的兄弟姐妹,但不是jQuery的兄弟姐妹: 香草: var elm_p=document.querySelector('p'); var elm_a=document.querySelector('a'); var elm_i=document.querySelector('i'); //-迭代elm1的所有同级,并检查是否有elm2。 //-确保elm1与elm2是不同的节点 //-依赖ES2015解构和阵列。一些 功能分区
测试
是否是
的兄弟姐妹,但不是
jQuery的兄弟姐妹:
香草:
var elm_p=document.querySelector('p');
var elm_a=document.querySelector('a');
var elm_i=document.querySelector('i');
//-迭代elm1的所有同级,并检查是否有elm2。
//-确保elm1与elm2是不同的节点
//-依赖ES2015解构和阵列。一些
功能分区(elm1、elm2){
返回elm1!=elm2&[…elm1.parentNode.children].some(child=>child==elm2)
}
//测验
[
[elm_p,elm_a],//正确
[elm_a,elm_p],//正确
[elm_a,elm_a],//假
[elm_a,elm_i]//错误
].forEach(([a,b])=>console.log(areSiblings(a,b)))
你问这个问题时知道答案吗?你可以把问题改成这样问是不是最好。@BenG“你可以把问题改成这样问是不是最好。”你说的“最好”是什么意思?最好,正确,随便什么。就在你问这个问题的那一分钟。你把这个答案。在我看来你不是在问问题。我不明白其中的道理。@BenG-是的,在过去的7年里,我一直在这样做。我问一个问题并写下答案,这样其他人在谷歌上寻求帮助时可以从中受益。在个人知识方面帮助社区是非常重要的。@BenG“在我看来,你不是在问问题。我不明白其中的道理。”见
<div>
<a></a>
<b></b>
<p></p>
</div>
<i></i>
var a = $('a'),
b = $('b'),
i = $('i');
a.siblings().is(b); // true (since "b" is sibling of "a")
a.siblings().is(i); // false (since "i" is sibling of "div" and not of "a")
a.siblings().is(a); // false (can't be singling of itself)