页面隐藏元素,即元素属性中包含 type="hidden"
或者style="display: none"
。此时如果需要对元素进行进行操作,使用selenium提供的常规方法是不可行的,这个时候就需要用到JS。selenium无法操作隐藏元素,但是能正常定位到,selenium也提供了一个入口可以执行JS脚本。
1、JS查找HTML元素的常用方法
1.通过id查找HTML元素
document.getElementById("some id")
;
2.通过标签名查找HTML元素
document.getElementByTagName("some tageName")
;
3.通过类名查找HTML元素
document.getElementByClassName("some className")
;
4.通过css选择器查找HTML元素
document.querySelector("css表达式")
;
2、JS操作HTML元素的常用方法
1.点击操作click();
document.getElementById("some id").click()
;
2.获取元素文本信息textContent;
document.getElementById("some id").textContent
;
3.改变某个元素的属性值
document.getElementById("some id").attribute=new value
;
可以通过浏览器的控制台验证JS
3、JS操作隐藏元素的核心步骤
// 将driver强转为JS
JavascriptExecutor JS = (JavascriptExecutor) driver;
// 执行需要操作的JS代码
JS.executeScript("return document.getElementById("labelTitle").textContent;");