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

如何通过JavaScript获取无类名子DOM节点内的文本值

实现方案

这个需求完全可以实现,核心思路是先定位到拥有确定类名的父节点,再通过父子节点关系定位到无类名的目标子元素,再提取文本内容即可,以下是几种常用实现方式:

方法1:通过CSS选择器直接定位(最简便)

直接使用父子选择器匹配目标元素,代码如下:

const targetText = document.querySelector('.jobsearch-JobMetadataFooter > div').textContent.trim();

说明:trim() 方法用于去掉文本前后的换行、空格等空白字符,最终得到的targetText就是你需要的Today值。

方法2:分步获取父节点再定位子节点

如果需要后续操作父节点,也可以分步操作:

  • 第一步:获取父元素节点
    const parentEle = document.querySelector('.jobsearch-JobMetadataFooter');
  • 第二步:获取父元素下的第一个div子节点
    const targetChild = parentEle.getElementsByTagName('div')[0];
  • 第三步:提取文本值
    const targetText = targetChild.textContent.trim();

方法3:兼容父元素下存在多个子div的场景

如果父节点下有多个div子元素,不确定目标元素的顺序,也可以遍历匹配文本内容:

const parentEle = document.querySelector('.jobsearch-JobMetadataFooter');
const childDivList = parentEle.querySelectorAll('div');
let targetText = '';

childDivList.forEach(div => {
  const currentText = div.textContent.trim();
  // 匹配到目标文本就赋值
  if (currentText === 'Today') {
    targetText = currentText;
  }
})

注意事项

  • 如果你要匹配的是父元素下第N个div子元素,可以把选择器替换为.jobsearch-JobMetadataFooter > div:nth-child(N),注意序号从1开始计数
  • 提取文本优先使用textContent属性,不要使用innerText,后者会受页面CSS样式渲染的影响,返回结果可能和预期不符

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 23:57:00