查找具有相同类但排除单击的元素的所有元素? [复制]

Posted

技术标签:

【中文标题】查找具有相同类但排除单击的元素的所有元素? [复制]【英文标题】:Find all elements with same class but exclude the clicked element? [duplicate] 【发布时间】:2018-09-20 14:42:52 【问题描述】:

我有这个 html

<div class="parent">
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
</div>

在点击的情况下,我需要触发一些操作。问题是我需要排除点击的元素。假设我单击第一个 .child ,然后操作仅应用于第二个和第三个 .child 元素。

  $('.child').on("click", function() 
    $(".parent").find(".child").DO_SOMETHING();
  );

【问题讨论】:

【参考方案1】:

像这样使用 jQuery not()

  $('.child').on("click", function() 
    $(".parent").find(".child").not($(this));
  );

示例

$('.child').on("click", function() 
    $(".parent").find(".child").css("color", "black").not($(this)).css("color", "red");
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div class="parent">
    <div class="child">One</div>
    <div class="child">Two</div>
    <div class="child">Three</div>
</div>

【讨论】:

你不需要创建一个完整的 jQuery 对象,只需 not(this) 就可以了。

以上是关于查找具有相同类但排除单击的元素的所有元素? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

我们如何使用没有标签名称的 xpath 查找元素? [复制]

选择具有共同类但也具有不同类的元素

单击具有相同 CssSelector 或相同 XPath FindElements 的所有元素

如何删除除一个之外具有相同id的所有元素? [复制]

查找所有重复行,包括“具有较小下标的元素”

使用 STL 在相反类别中查找具有匹配属性的元素的算法