gpt4 book ai didi

如何在selenium中使用js实现定位

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 26 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章如何在selenium中使用js实现定位由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

学习selenium的时候经常用扫的定位方式WebDriver定位方式,但是一些Windows的窗口就无力了,这时候可以用js定位 。

使用js定位的时候是用DOM树定位方式 。

eg:

document.getElementById("su"),

这里就可以看出来,和浏览器中的console控制台的定位方式一样样的——果然知识都是相通的 。

如何在selenium中使用js实现定位

接下来就是正题:

selenium中执行js脚本:

第一步首先强转成JavascriptExcetor:

JavaScriptExecutor js = (JavascriptExecutor) driver,

然后用此JavascriptExcetor对象调用js定位的方法 。

举例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// 设置日期控件的读写属性
((JavascriptExecutor) driver).executeScript( "document.getElementById(\"fromDate\").readOnly=false" );
// 直接为日期控件强行赋值
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript( "document.getElementById('fromDate').setAttribute('value','2013-06-21');" );
// 富文本编辑框的处理
driver.switchTo().frame( "ueditor_0" );
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript( "document.body.innerHTML='ABCDEFG'" );
//js模拟点击
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript( "arguments[0].click();" ,driver.findElement(By.id( "su" )));
//滚动条操作
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript( "document.documentElement.scrollTop=1500" );
//元素赋值
document.getElementById( 'HD_CheckIn' ).value= 'zhangsan' ;
//日期类型元素赋值
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript( "arguments[0] .value=‘2016-04-20';" ,driver.findElement(By*****)));

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我.

原文链接:https://www.cnblogs.com/lybolg/p/7263122.html 。

最后此篇关于如何在selenium中使用js实现定位的文章就讲到这里了,如果你想了解更多关于如何在selenium中使用js实现定位的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com