使用jQuery删除每个class为each的div内的重复子元素
实现代码
直接替换你现有的代码即可:
$('.each').each(function() { const textCount = {}; const $childDivs = $(this).children('div'); // 统计每个文本的出现次数 $childDivs.each(function() { const curText = $(this).text().trim(); textCount[curText] = (textCount[curText] || 0) + 1; }); // 移除所有出现过重复的元素 $childDivs.each(function() { const curText = $(this).text().trim(); if (textCount[curText] > 1) { $(this).remove(); } }); });
代码说明
- 首先将选择器从你原来的
.dropPlace修改为.each,匹配你需要处理的目标容器 - 每个
.each容器独立统计子元素的文本出现次数,不会出现跨容器统计的问题 - 代码默认会忽略子div文本首尾的空白字符,如果需要严格匹配包含空白的文本,删除
.trim()即可 - 执行后会删除所有出现次数≥2的子元素,仅保留完全无重复的项,和你期望的输出结果完全一致
内容的提问来源于stack exchange,提问作者TryHard11332
相关产品推荐
相关产品推荐

