JavaScript 如何找到一个不断变化的类 [重复]

JavaScript how to find a class that is constantly changing [duplicate]

提问人:farge_goty 提问时间:7/11/2023 最后编辑:farge_goty 更新时间:7/11/2023 访问量:32

问:

示例:该类在一小时后更改为 .我如何找到这样的课程?Paragraph__P2Short--18r8zx8 styles__DateUpdated--7vi2vd kYkeUSParagraph__P2Short--vgyzhi styles__DateUpdated--6ztczv fQPIAt

我试过了,但班级在不断变化,但班级没有改变document.getElementsByClassName("")styles__DateUpdated

JavaScript getElementsByClassName

评论

0赞 h0r53 7/11/2023
网站设计者可能会动态生成名称,以防止人们做您尝试做的事情。但是,有一些方法仍然可以根据元素在 HTML 标记中的位置可靠地访问该元素。特别是,您可以尝试 XPATH 或其他未更改的元素或类的子级。查看 HTML 层次结构并找出未更改的内容,然后您可以确定要查找的元素。如果始终在类名中,则可以使用正则表达式。stackoverflow.com/questions/13775282/......styles__DateUpdated
0赞 Bergi 7/11/2023
谁或什么在更新类名?
0赞 Andy 7/11/2023
@h0r53看起来像CSS模块编译器的标准输出。

答:

1赞 boppy 7/11/2023 #1

您可以尝试使用 CSS 选择器,例如:.querySelectorAll

const elements = document.querySelectorAll('[class*="styles__DateUpdated--"]');

它将为您提供在 class 属性中包含字符串“styles__DateUpdated--”的所有元素。当然,您可能需要更深入地过滤到您需要的内容......