Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查元素(DOM节点)是否为同级_Javascript_Jquery_Dom - Fatal编程技术网

Javascript 检查元素(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解构和阵列。一些 功能分区

如何检查两个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解构和阵列。一些
功能分区(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)