具有相同类名的Javascript组元素

问题描述 投票:0回答:1
javascript html css nodelist
1个回答
0
投票

您可以使用此代码:

const findMeElements = document.querySelectorAll('.find-me');

const groupedElements = {};

findMeElements.forEach(element => {
    const currentClasses = Array.from(element.classList);
    const otherClasses = currentClasses.filter(className => className !== 'find-me');
    const key = otherClasses.join(',');
    if (groupedElements[key]) {
        groupedElements[key].push(element);
    } else {
        groupedElements[key] = [element];
    }
});

console.log(groupedElements);
<div class="find-me one two">
  Element 1
</div>
<div class="find-me one two">
  Element 2
</div>
<div class="find-me one two three">
  Element 3
</div>
<div class="find-me one two three">
  Element 4
</div>
<div class="find-me one two four">
  Element 5
</div>
<div class="find-me one two">
  Element 6
</div>
<div class="one two">
  Element 7
</div>

© www.soinside.com 2019 - 2024. All rights reserved.