首页 > Web开发 > 详细

Selenium第15课 JS相关

时间:2019-02-24 12:45:27      阅读:203      评论:0      收藏:0      [点我收藏+]

一、滚动条

  def js_focus_element(self, locator):

    # 聚集元素

    target = self.find_element(locator)

    self.driver.execute_script("arguments[0].scrollIntoView();", target)

 

  def js_scroll_to_top(self):

    # 滚动到顶部

    js = "window.scrollTo(0, 0)"

    self.driver.execute_script(js)

 

  def js_scroll_end(self):

    js = "window.scrollTo(0, document.body.scrollHeight)"  # 或者(0, 10000),最底端是10000

    self.driver.execute_script(js)

 

二、有iframe的富文本

  js = document.getElementsByClassName("ke-edit-iframe")[0].contentWindow.document.body.innerHTML="%s" % body

  driver.execute_script(js)

 

三、JS获取元素的方法

  document.getElementById("id")

  document.getElementsByName("name")[0]

  document.getElementsByTagName("tag")[0]

  document.getElementsByClassName("class")[0]

  document.querySelectorAll("css selector")

 

四、Jquery相关操作

  $("css selector").val(" ")  # val()是发送文本,点击用.click()

  username = "$(‘#input1‘).val(‘输入内容‘)"

  driver.execute_script(username)

 

五、JS修改属性:日历控件

  去掉只读属性,清空内容,然后就可以输入内容了

  js = "document.getElementById(‘train_date‘).removeAttribute(‘readonly‘);"

  driver.execute_script(js)

  #1 send_keys 赋值

  #2 JS赋值

  js1 = "document.getElementById("train_date").value=‘2019-02-24‘;"

  driver.execute_script(js1)

 

六、内嵌div滚动条

  先定位div的位置,再通过scrollTop和scrollLeft的方法控制进度

  document.getElementById("id").scollTop=10000;

  document.getElementById("id").scrollLeft=10000;

 

七、JS解决click失效问题

  #1 js直接点击

  js = "document.getElementsByClassName("class")[0].click();"

  driver.execute_script(js)

  #2 jquery点击

  jquery = "$(‘css selector‘).click()"

  driver.execute_script(jquery)

 

  

  

   

 

  

  

 

Selenium第15课 JS相关

原文:https://www.cnblogs.com/yzyj/p/10425824.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!