Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.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 使用jQuery查找另一个元素上方的元素_Javascript_Jquery - Fatal编程技术网

Javascript 使用jQuery查找另一个元素上方的元素

Javascript 使用jQuery查找另一个元素上方的元素,javascript,jquery,Javascript,Jquery,我正在尝试使用jQuery从以下html中查找元素 <ul class="gdl-toggle-box"> <li class=""> <h2 class="toggle-box-title"><span class="toggle-box-icon"></span>Volunteer Form</h2> <div class="toggle-box-content" style=""&g

我正在尝试使用jQuery从以下html中查找元素

<ul class="gdl-toggle-box">
   <li class="">
      <h2 class="toggle-box-title"><span class="toggle-box-icon"></span>Volunteer Form</h2>
      <div class="toggle-box-content" style="">
      </div>
   </li>
</ul>
试试这个

$('h2.toggle-box-title').click(function(){
   $(this).parent().addClass('newclass');
});
选择元素的父元素

要选择图元父级,可以使用父级函数

试试这个:

$('h2.toggle-box-title').click(function() {
    $(this).parent('li').addClass('active');
});
*更具体地说,通过指定父对象的选择器,可以将其作为要选择的父对象

查看jQueryAPI文档

父级-获取当前匹配元素集中每个元素的父级, 可选地由选择器过滤

你可以用

最近的将匹配第一个父元素,该父元素与遍历DOM树的选择器相匹配

试试这个:

$('h2.toggle-box-title').click(function() {
    $(this).parent('li').addClass('active');
});

单击按钮后,您可以使用事件:

$("something").parent().find("h2.myClass");
// And if you want you can add class after you find you object

.parent用于直接父级和.parents'selector',直到找到匹配项为止。@ElliotLings parents将查找所有匹配项,而不仅仅是first@wirey即使找到匹配项,父级“选择器”是否会一直冒泡到根级?@ElliotLings,parents返回与选择器匹配的所有父级的集合。是的,您可以使用它查找所有父级,直到根。父级只返回一个项的集合。这是JQuery更快的方法。它不在上面,而是在里面。父母的子女。现在你所能做的就是搜索准确的问题。这看起来很有趣。我会看一看并尝试一下,谢谢。这很好,减少了代码量,这总是很好的。真的很激动,但我仍然有打开页面上所有元素的问题。最近的比父级更好,因为对HTML的更改不会轻易破坏JS。@rigelstpierre如果你能把HTML放在小提琴里,我可以看看发生了什么。。。
$('h2.toggle-box-title').click(function() {
    $(this).parent('li').addClass('active');
});
$("something").parent().find("h2.myClass");
// And if you want you can add class after you find you object