当元素被单击时,用另一个类找到相对于该元素最近的元素并切换它
When element clicked, find closest element relative to this element with another class and toggle it
我在这里错过了一些东西。当单击类one
的行时,我想只找到与类two
最接近的行,然后切换(显示/隐藏)它。
$(".one").on('click', function() {
$(this).find('.two').toggle();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr class="one">
<td> Hello </td>
</tr>
<tr>
<td> world </td>
</tr>
<tr class="two">
<td> Foo </td>
</tr>
<tr class="two">
<td> Bar </td>
</tr>
</table>
像这样:
$(".one").on('click', function() {
$(this).nextAll('.two:first').toggle();
});
http://jsfiddle.net/DerekL/5ossufmj/我想你可能需要.next()
。它根据在DOM中的位置查找DOM中的下一个兄弟元素。
或者可以这样:在特定元素
之后获取具有特定类的下一个元素编辑
下面是一个可行的解决方案:
$('.one').on('click', function () {
var this_el = $(this);
var el = findNextWithClass(this_el, "two");
if (el != null)
{
el.toggle();
}
else
{
alert("null");
}
});
function findNextWithClass(element, className) {
var next = element.next();
if (next.hasClass(className)) {
return next
} else {
if (next != null) {
return findNextWithClass(next, className);
} else {
return null;
}
}
}
相关文章:
- 选择一个元素,使其最近的具有特殊属性的父元素具有特殊值
- 找到具有绝对位置的最近元素
- 如何获取特定类中最近的元素
- 找到最近的span元素并更改CSS类
- jQuery .load 在最近的跨度而不是元素本身
- 使用 z 索引确定最近的元素
- 选择最近的(选择器)元素
- 查找所选元素的最近链接
- 如何查找最近的元素
- 在没有 jQuery 的情况下查找最近的元素
- Jquery 选择元素下一个/上一个/最近
- 关于使用类名定位第一个上一个最近元素的问题
- 隐藏最近的元素
- jQuery.最近未找到正确的p元素
- 使用多个选择器查找DOM中最近的元素
- 如何使用javascript从最近的li元素向pre-tag添加id
- 使用javascript查找元素相对于最近相对定位的父元素的位置
- 若最近的元素包含字符串,则将类添加到元素中
- 在元素中查找最近的td
- 当元素被单击时,用另一个类找到相对于该元素最近的元素并切换它