我有一个下拉列表,我想点击其中一个项目并跟踪页面上的一些活动。我的 HTML 结构看起来像这样 <slot> #shadowroot <myoption-cmp> #shadowroot <some anchor text> <myoption-cmp> #shadowroot <some anchor text> </slot>.....如果你能看到有2个元素,我尝试使用查找元素(By.cssSelector(“我的选择-cmp”)。我不断得到“组织.openqa.硒.Web驱动程序异常:javascript错误:无法读取空的属性'查询选择全部'”。我的样品硒代码:<myoption-cmp>WebElement solt = parentElement.findElement(By.cssSelector("slot"));WebElement shadowSlot = expandShadow(slot);List<WebElement> menuCmp = shadowSlot.findElements(By.cssSelector("myoption-cmp"));// I expect to get the list of elements nd then I'd like to access it as below.WebElement shadow2 = expandShadow(menuCmp.get(0));WebElement anchor = shadow2.findElement(By.cssSelector("a"));anchor.click(); 只是想知道我是否做错了什么。我尝试使用查找元素和查找元素,但两者都给了我错误,如“org.openqa.硒.Web驱动程序异常:javascript 错误:无法读取属性'查询选择器/查询选择器全部'的空”。任何帮助或建议都值得赞赏。
1 回答
有只小跳蛙
TA贡献1824条经验 获得超8个赞
能够找到解决方案。我需要使用
findElementInShadowRoot(shadowSlot, By.cssSelector('myoption-cmp'));
,然后展开该元素以访问第二个阴影下的子元素。
添加回答
举报
0/150
提交
取消