删除具有相同类但不具有特定id的div的div

时间:2018-02-19 17:59:39

标签: javascript jquery

我有一个html列表,当有人点击.item类的相关内容时,会将layer = [id]附加到最近的div上,点击div,其类名为“layer”。 whenen点击项目类“=== “这部分将添加。

我想在点击项目div时找到所有具有类“layer”的div除了具有类“layer”且id为layer + [clicked item id]

的那个

请咨询

以下是我的HTML

<div class="seperator">
<div class="item" id="23"> ==== </div>
<div class="item" id="24"> ==== </div>
<div class="item" id="25"> ==== </div>
</div>
<div class="layer" id="later-23"> === </div>

===

===

<div class="seperator">
<div class="item" id="33"> ==== </div>
<div class="item" id="34"> ==== </div>
<div class="item" id="25"> ==== </div>
</div>
<div class="seperator">
<div class="item" id="43"> ==== </div>
<div class="item" id="44"> ==== </div>
<div class="item" id="45"> ==== </div>
</div>

1 个答案:

答案 0 :(得分:0)

如果我正确地理解了你的问题,那么这就是你的实例。正如您所看到我们捕获点击事件,然后我们if检查event.target.id(您点击的项目)和找到的所有.layer项的ID,并在检查后删除所有除了.layer

中具有相同编号的元素之外的id元素

&#13;
&#13;
 $('.item').click(function(e) {         
  $(".layer").each(function() {
  	if(e.target.id != $(this).attr('id').split('-').pop()) {
    	$( this ).remove();
    }    
  });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="seperator">
<div class="item" id="23"> ==== </div>
<div class="item" id="24"> ==== </div>
<div class="item" id="25"> ==== </div>
</div>
<div class="layer" id="layer-23"> === </div>

<div class="layer" id="layer-24"> === </div>
<div class="seperator">
<div class="item" id="33"> ==== </div>
<div class="item" id="34"> ==== </div>
<div class="item" id="25"> ==== </div>
</div>
<div class="seperator">
<div class="item" id="43"> ==== </div>
<div class="item" id="44"> ==== </div>
<div class="item" id="45"> ==== </div>
</div>
&#13;
&#13;
&#13;