Selenium-js

1、javascript示例,操做富文本javascript

// 给富文本框赋值java

WebElement text=driver.findElement(By.id("textarea"));数组

JavascriptExecutor javascriptExecutor=(JavascriptExecutor)driver;app

javascriptExecutor.executeScript("arguments[0].innerHTML=\""+"啊啊啊abc"+"\"", text);url

// 取出富文本框的值对象

String areatxt=(String)javascriptExecutor.executeScript("return arguments[0].innerHTML;", text);ip

System.out.println(areatxt);element

// 一次传入多个参数字符串

WebElement input=driver.findElement(By.id("edit"));input

javascriptExecutor.executeScript("arguments[0].innerHTML=\""+"bbbbbbbbb"+"\";arguments[1].value=\""+"input书屋"+"\";", text,input);

executeScript方法若是有返回值,有如下几种状况:

  • 若是返回一个页面元素(document element), 这个方法就会返回一个WebElement
  • 若是返回浮点数字,这个方法就返回一个double类型的数字
  • 返回非浮点数字,方法返回Long类型数字
  • 返回boolean类型,方法返回Boolean类型
  • 若是返回一个数组,方法会返回一个List<Object>
  • 其余状况,返回一个字符串
  • 若是没有返回值,此方法就会返回null

2、javascript操做滚动条

scrollIntoView是滚动到某个元素的可见范围内,元素在最顶端;

scrollBy,就是在当前滚动条的范围横向竖向移动多少距离;

scrollTo,移动到指定的位置

 

  1. //移动到元素element对象的“顶端”与当前窗口的“顶部”对齐  
  2. ((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView();", element);  
  3. ((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true);", element);  
  4.   
  5. //移动到元素element对象的“底端”与当前窗口的“底部”对齐  
  6. ((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(false);", element);  
  7.   
  8. //移动到页面最底部  
  9. ((JavascriptExecutor) driver).executeScript("window.scrollTo(0, document.body.scrollHeight)");  
  10.   
  11. //移动到指定的坐标(相对当前的坐标移动)  
  12. ((JavascriptExecutor) driver).executeScript("window.scrollBy(0, 700)");  
  13. Thread.sleep(3000);  
  14. //结合上面的scrollBy语句,至关于移动到700+800=1600像素位置  
  15. ((JavascriptExecutor) driver).executeScript("window.scrollBy(0, 800)");  
  16.   
  17. //移动到窗口绝对位置坐标,以下移动到纵坐标1600像素位置  
  18. ((JavascriptExecutor) driver).executeScript("window.scrollTo(0, 1600)");  
  19. Thread.sleep(3000);  
  20. //结合上面的scrollTo语句,仍然移动到纵坐标1200像素位置  
  21. ((JavascriptExecutor) driver).executeScript("window.scrollTo(0, 1200)");  

3、能够经过执行js的方式导入一个js包

就是执行一段js,这段js经过document.createElement('script');建立一个script标签,而后设置标签的url值,而后找到head,把这个script追加到head末尾(appendchild)。

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息