webdriver与JS操作浏览器元素
1、JQuery的选择器实例
语法 | 描述 |
---|---|
$(this) | 当前 HTML 元素 |
$("p") | 所有 <p> 元素 |
$("p.intro") | 所有 class="intro" 的 <p> 元素 |
$(".intro") | 所有 class="intro" 的元素 |
$("#intro") | id="intro" 的元素 |
$("ul li:first") | 每个 <ul> 的第一个 <li> 元素 |
$("[href$='.jpg']") | 所有带有以 ".jpg" 结尾的属性值的 href 属性 |
$("div#intro .head") | id="intro" 的 <div> 元素中的所有 class="head" 的元素 |
2、原生js定位元素的方法
document.getElementById("intro") # id=intro的某个元素
document.getElementsByClassName("red") # class="red"的全部元素
document.getElementsByName("login") # name=login的全部元素
document.getElementsByTagName("p") # 所有 <p> 元素
document.getElementsByTagNameNS("ns","name") # 指定命名空间和节点名称的全部元素
document.querySelector("css_selector") # 返回文档中匹配指定 CSS 选择器的一个元素
document.querySelectorAll() # 返回匹配 CSS 选择器的全部元素
3、js操作浏览器
文本框中输入 | webdriver | driver.find_element_by_css_selector("[name='username']").send_keys('terry001') |
jQuery | $("[name='username']").eq(0).val('terry001'); | |
原生java_script | var el=document.querySelector("[name='username']");el.value="terry001"; | |
文本框清空 | webdriver | driver.find_element_by_css_selector("[name='username']").clear() |
jQuery | $("[name='username']").eq(0).val(''); | |
原生java_script | var el=document.querySelector("[name='username']");el.value=""; | |
读取文本框中输入的文本 | webdriver | 无 |
jQuery | $("[name='username']").eq(0).val(); | |
原生java_script | var el=document.querySelector("[name='username']");el.value; | |
获取文本 | webdriver | driver.find_element_by_css_selector("#los>h2").text |
jQuery | $("#los>h2").text(); | |
原生java_script | var el=document.querySelector("#los>h2"); el.innerText; | |
获取元素属性 | webdriver | driver.find_element_by_css_selector("[name='login']").get_attribute('type') |
jQuery | $("[name='login']").eq(0).attr("type") | |
原生java_script | var el=document.querySelector("[name='login']"); el.getAttribute('type'); | |
鼠标左键点击 | webdriver | driver.find_element_by_css_selector("[name='login']").click() |
jQuery | $("[name='login']").eq(0).trigger('click') | |
原生java_script | var el=document.querySelector("[name='login']"); el.click(); | |
复选框是否被选中 | webdriver | driver.find_element_by_css_selector("[name='memberPass']").is_selected() |
jQuery | $("[name='memberPass']").is(':checked') | |
原生java_script | var el=document.querySelector("[name='memberPass']"); el.checked; | |
当前页面跳转到新网址 | webdriver | driver.get("https://www.baidu.com/") |
jQuery | window.location.href='https://www.baidu.com'; | |
原生java_script | 同jQuery | |
在新窗口中打开网址 | webdriver | 无 |
jQuery | window.open("https://www.jd.com/"); | |
原生java_script | 同jQuery |
webdriver与JS操作浏览器元素的更多相关文章
- Selenium with Python 005 - 调用js操作页面元素
WebDriver提供了execute_script()方法来执行JavaScript方法,格式如 driver.execute_script(script,*args) 执行js一般有两种场景,一是 ...
- java selenium webdriver处理JS操作窗口滚动条
未经作者允许,禁止转载!!! java selenium webdriver处理JS操作窗口滚动条 java selenium webdriver处理JS操作窗口滚动条 import org.open ...
- F12修改html进行本地js操作页面元素
F12修改html进行本地js操作页面元素
- Js操作DOM元素及获取浏览器高宽
在JavaScript中,经常会来获取Document文档元素,是 HTML 文档对象模型的英文缩写,Document Object Model for HTML,是基于浏览器编程,HTML DOM ...
- Python selenium webdriver设置js操作页面滚动条
js2 = "window.scrollTo(0,0);" #括号中为坐标 当不知道需要的滚动的坐标大小时: weizhi2 = driver.find_element_by_id ...
- JS操作iframe元素
1. demo1.html页面中有个iframe元素,iframe元素的src是iframe1.html,怎么在demo1.html页面中操作iframe1.html页面 答曰:demo1.html ...
- js操作数组元素
一, 删除数组指定的某个元素 首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为: Array.prototype.indexOf = function(val) ...
- WebDriver API——延时操作及元素等待
在自动化测试过程当中,受网络.测试设备等诸多因素的影响,我们经常需要在自动化测试脚本中添加一些延时来更好的定位元素来进行一系列的操作. 一般有这么几种方式: 1.implicitlyWait.识别对象 ...
- JS操作DOM元素属性和方法
Dom元素基本操作方法API,先记录下,方便以后使用. W3C DOM和JavaScript很容易混淆不清.DOM是面向HTML和XML文档的API,为文档提供了结构化表示,并定义了如何通过脚本来访 ...
随机推荐
- 关于ionic打包出错:ionic Unable to start the daemon process
一直试都没问题的ionic build android 今天竟然冒出了这个错误 Error:Unable to start the daemon process. This problem migh ...
- Memcached进程挂掉自动重启脚本
vim memcached_check.sh #!/bin/sh #check memcached process and restart if down PATH=$PATH:/opt/env/ ...
- JavaScript 闭包 面试题
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...
- [DevExpress]TreeListLookUpEdit带checkbox之经典运用
上代码: public partial class TreeListLookUpEdit : DevExpress.XtraEditors.XtraForm { private string _Key ...
- file_put_contents执行返回false,file_put_contents false(linux服务器httpd)
file_put_contents执行返回false,file_put_contents false(linux服务器httpd) 默认下selinux是开启的查看SELinux状态:1./usr/s ...
- spring boot 使用拦截器 实现 用户登录拦截
登录拦截和和权限拦截实现类似 首先自定义一个[DefineAdapter]类,这个类我是用来放自定义的配置(比如 自定义请求参数,自定义拦截器等),集成WebMvcConfigurerAdapte ...
- eclipse maven 依赖jar下载失败解决办法
针对PC与Maven私服之间网络传输问题 打开.m2本地仓库所在目录, 通过win文件夹的搜索功能,查找 *.lastUpdated ,然后将找到的文件全部删除 重新 Maven Update Pro ...
- linux无线网络配置_转
转自:http://www.cnblogs.com/dartagnan/archive/2010/12/05/2003521.html 一位资生linux 原文:http://www.hpl.hp ...
- AR实景购物强势来袭,华为nova3让你试完再买!
没空买家具?没空挑壁纸? 浴盆挑了仨星期,还是老样子! 不敢下手买,没空往回退, 这样的生活,你说累不累! 别愁了, 按华为nova3说的办, 可省千元退货费! 刚刚过去的华为nova3发布会上,华为 ...
- Oracle PL/SQL 高级编程
1. 复合数据类型--记录类型 Ø 语法格式 type 类型名 is record ( 字段1 字段1类型 [not null]:=表达式1; 字段2 字段2类型 [not n ...