如何用Selenium的getAttribute获取完整的class属性值?
解决方法
你可以通过以下两种可靠的方式获取完整的class属性值:
使用
className属性:这是DOM元素的原生属性,直接返回完整的class字符串const targetElement = document.querySelector('.col-scope.serialize'); const fullClassValue = targetElement.className; // fullClassValue 会是 "col-scope serialize"使用
classList.toString():classList返回一个DOMTokenList对象,调用toString()方法可以将其转为完整的class字符串const fullClassValue = targetElement.classList.toString();
至于你遇到getAttribute("class")只返回部分值的情况,大概率是页面中存在动态修改class的脚本(比如某些前端框架的操作),或者元素的class属性被异步更新了,这时候上面两种方法会比getAttribute更稳定,因为它们直接读取元素当前的class状态,而非初始的属性值。
内容的提问来源于stack exchange,提问作者Bashiul Alam Sabab
相关产品推荐
相关产品推荐

