You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用querySelectorAll()仅返回特定球员——排除伤病名单球员

解决方法

方法1:直接定位Power Play板块提取球员

先精准锁定包含「Power Play #1」和「Power Play #2」标题的板块,只在这些板块内提取球员,从源头上避开受伤球员:

// 获取所有阵容分组板块
const powerPlayGroups = document.querySelectorAll('.lineup__group');

powerPlayGroups.forEach(group => {
  const titleElement = group.querySelector('.lineup__title');
  // 只处理标题匹配Power Play的板块
  if (titleElement && (titleElement.textContent.includes('Power Play #1') || titleElement.textContent.includes('Power Play #2'))) {
    const players = group.querySelectorAll('.lineup__player > a');
    players.forEach(player => {
      console.log(player.textContent.trim());
    });
  }
});

方法2:排除Injuries板块内的球员

先找到「Injuries」板块的容器,再筛选所有球员链接时排除该容器内的元素:

// 获取所有球员链接
const allPlayers = document.querySelectorAll('.lineup__player > a');
let injuryContainer = null;

// 定位Injuries板块
Array.from(document.querySelectorAll('.lineup__group')).forEach(group => {
  const title = group.querySelector('.lineup__title');
  if (title && title.textContent.includes('Injuries')) {
    injuryContainer = group;
  }
});

// 输出非受伤板块的球员
allPlayers.forEach(player => {
  if (!injuryContainer.contains(player)) {
    console.log(player.textContent.trim());
  }
});

方法3:通过受伤图标筛选(页面自带标识)

观察页面会发现受伤球员的行内通常带有受伤图标(比如.icon-injury类),可以通过检查该标识排除受伤球员:

const allPlayers = document.querySelectorAll('.lineup__player > a');

allPlayers.forEach(player => {
  const playerRow = player.closest('.lineup__player');
  // 检查当前球员行是否存在受伤图标
  const isInjured = playerRow.querySelector('.icon-injury') !== null;
  if (!isInjured) {
    console.log(player.textContent.trim());
  }
});

内容的提问来源于stack exchange,提问作者Icon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 11:22:59