Java和JS:将结果存储为Java变量
我试图通过使用一个url和比较两个浏览器之间的所有属性以及坐标来比较浏览器之间的差异。我知道我可以使用Java和JS:将结果存储为Java变量,java,javascript,dom,cross-browser,Java,Javascript,Dom,Cross Browser,我试图通过使用一个url和比较两个浏览器之间的所有属性以及坐标来比较浏览器之间的差异。我知道我可以使用document.getElementsByTagName(*)获取所有元素但是如何将此脚本的结果存储在Java变量(列表?)中。请记住我对JS很陌生 其他信息:我正在使用WebDriver实现js,如下所示: JavascriptExecutor js = (JavascriptExecutor) driver; js.executeScript("var all = docu
document.getElementsByTagName(*)获取所有元素代码>但是如何将此脚本的结果存储在Java变量(列表?)中。请记住我对JS很陌生
其他信息:我正在使用WebDriver实现js,如下所示:
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("var all = document.getElementsByTagName(*);");
List elements=(List)js.executeScript(“document.getElementsByTagName(*);”;
看
- 对于HTML元素,此方法返回WebElement
- 对于数组,返回一个列表,其中每个对象都遵循上述规则。我们支持嵌套列表
[编辑]Casr它说---不兼容的类型:必需:java.util.List找到:java.lang.Object。所以我认为这行不通。但我认为这会:arraylistelements=newarraylist();添加(js.executeScript(“document.getElementsByTagName(*);”));谢谢
List<WebElement> elements = (List<WebElement>) js.executeScript("document.getElementsByTagName(*);");