Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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
Jquery 给定一个叶节点,查找包含该叶节点标记的公共父节点_Jquery_Dom - Fatal编程技术网

Jquery 给定一个叶节点,查找包含该叶节点标记的公共父节点

Jquery 给定一个叶节点,查找包含该叶节点标记的公共父节点,jquery,dom,Jquery,Dom,给定$'a'。eq1查找包含a的公共父级。您不能从$'parent'开始,它必须从开始的叶节点开始向上遍历,并以某种方式发现所有其他类似的叶节点锚 我无法控制HTML,需要一种方法来自动发现与我选择的类似的叶节点。这就是你想要找到的吗 <div id='parent'> <div> <span> <a>item1</a> </span> </div> <di

给定$'a'。eq1查找包含a的公共父级。您不能从$'parent'开始,它必须从开始的叶节点开始向上遍历,并以某种方式发现所有其他类似的叶节点锚


我无法控制HTML,需要一种方法来自动发现与我选择的类似的叶节点。

这就是你想要找到的吗

<div id='parent'>

  <div>
     <span>
       <a>item1</a>
     </span>
  </div>

  <div>
    <span>
      <span>
        <a>item2</a>
      </span>
    </span>
  </div>

  <div>
    <span>
      <a>item3</a>
    </span>
  </div>

  <div>
    <a>item4</a>
            </span>
   </div>
</div>

在这里,它发现所有的

都以什么方式喜欢它?同样的,它没有吗?同一类,嗯,也没有类?那么从第二个锚点开始,eq是零基的,向上遍历???并找到所有其他具有相同。。。也许发短信?没有!当叶节点具有相同的标记并共享一个公共父节点时,它们是相似的。示例中的元素都没有公共父节点。前三个元素是不同元素的子元素,最后一个元素的父元素是一个没有其他子元素的元素。@Dacrossby您不了解问题的范围,它不限于此示例,这是我正在处理的可能数据集的一个片段,我正在寻找一种树搜索算法,它可以发现基于公共父元素的相似元素。公共父对象不会是主体,因为它将由页面上的许多其他“a”组成。这就是为什么我说它不能从自上而下的方法开始,它必须从底部开始搜索公共父级。要查找父级中的所有标记,很简单:var atags=$'parent a',我认为这不是OP要查找的,尽管给定一个叶节点item1查找所有其他item2等等,没有提前知道父母。我正在寻找一种方法,从item1向上遍历并执行$this.parent.find'a'。在找到所有的项之前,不要选择self。@KimJongWoo所以所有的项都有一个共同的父项,所有这些项都有一个共同的父项,对吗?是的,我认为你的想法是正确的。我认为算法是查找item1的父项,并使用它来查找。查找'a',如果它只返回自身,则重复此过程,直到找到公共父项。类似于parent=$'a'。eq1.parent;而parent.find'a'.get.size==1{parent=parent.parent;}返回parent;
$('#parent').children().each(function(){
     var atag = $(this).find('a');
});