执行JS
强制转换driver,然后调用executeScript方法
((JavaScriptExecutor))driver.executeScript(Script,Arguments);
从javaScript代码中返回数据,我们需要使用return关键字。
JavaScript
Syntax:
JavascriptExecutor js =(JavascriptExecutor) driver;
Js.executeScript(Script, Arguments);
Howto generate alert pop window in selenium
Javascriptexecutor js =(javascriptexecutor) driver;
Js.executeScript(“alert(‘window-title’)”);
如何使用JS在selenium webdriver中实现点击按钮的操作?
Webelement button = driver.findelement(by.id(“kw”));
Javascriptexecutor js = (javascriptexecutor) driver;
Js.executeScript(“arguments[0].click();”, element);
如何使用JS刷新浏览器?
Javascriptexecutor js =(javascriptexecutor) driver;
Js.executeScript(“history.go(0)”);
如何在selenium中获取整个网页的innertext?
Javascriptexecutor js =(javascriptexecutor) driver;
String stext = js.executeScript(“returndocument.documentElement.innertext;”).toString;
如何获取网页的标题
Javascriptexecutor js =(javascriptexecutor) driver;
Js.executeScript(“return document.title;”).toString;
如何使用selenium实现鼠标滚动操作
Javascriptexecutor js =(javascriptexecutor) driver;
Js.executeScript(“window.scrollBy(0,50)”); 表示往下滚动50个像素点
js.executeScript(“window.scrollBy(0,document.body.scrollHeight)”);
是和实现点击悬停的菜单?
Javascriptexecutor js =(javascriptexecutor) driver;
Js.executeScript(“$(‘ul.menus.menu-secondary.sf-js-enabled.sub-menuli’).hover()”);
贴个实例供大家参考下,这段代码是用来格式为“readonly”属性的input日期输入元素。
/**
* 日期控件处理,将readonly属性remove掉,input输入框按正常文本输入框处理,输入正确的日期格式数据
*/
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].removeAttribute('readonly');", driver.findElement(By.xpath(".//*[@id='editForm']/table/tbody/tr[1]/td[2]/span/input[1]")));