
1、1.直接传入Javascript代码,定位元素
js可以点击页面上不显示暂时隐藏(比如下拉列表),但是html文件中存在的属性
WebDriver driver = new FirefoxDriver();
JavascriptExecutor js = (JavascriptExecutor)dr;
比如:http://www.globebuy.com/search/searchNew.jhtml?query=minions&categoryid=250007 页面中登录下的my Account
js.executeScript("window.document.getElementById('myAccount').click()";
2、传入WebElement执行JS,对元素进行操作
此处可以通过webdriver的N种定位方式来定位 id/name/class/linktext/partlinktext/xpath/css等
- WebElement element = driver.findElement(By.linkText("Electronics")); //
- js.executeScript("arguments[0].click();", element);
3、为元素新增点击事件
之前元素没有onclick()事件,此处是新增
WebElement e = driver.findElement(By.xpath(".//*[@id='lg']/img"));
js.executeScript("arguments[0].onclick=function(){window.open('http://www.sina.com')}",e);
4、修改元素属性
- WebElement e= driver.findElemnt(By.id("inputnumber"));
- js.executeScript("arguments[0].setAttribute('style', arguments[1])", e, "height: 800px");
5、 新增元素属性
待定
6、 删除元素属性
- WebElement e= driver.findElemnt(By.id("inputnumber"));
- js.executeScript("arguments[0].removeAttribute('style')",e);
7、 得到元素属性
- WebElement e= driver.findElemnt(By.id("inputnumber"));
- js.executeScript("document.getElementById("myDiv")",e);