【playwright】使用playwright实现拖动功能

思路说明

  • 使用locator定位到要拖动滑块元素,如元素名叫ele
  • 获取元素ele的bounding_box含4分属性值:x,y,width,height
  • 把鼠标移动到元素ele的中心点,中心点位置为:x+width/2,y+height/2
  • 按下鼠标
  • 计算出要移动的下一个位置,以长条滑块为例,拖动到长条头部实现解锁,那x的位置应该为x+width/2 + 某个固定值(足够大就好)

 

  • 执行移动操作,下一个位置坐标为:x+width/2 + 某个固定值,y+height/2
  • 释放鼠标

调用方法

  • 元素定位:page.locator()
  • 获取元素位置及大小:ele.bounding_box()
  • 鼠标移动:page.mouse.move()
  • 按下鼠标:page.mouse.down()
  • 释放鼠标:page.mouse.up()

示例代码快

 #获取拖动按钮位置并拖动
    dropbutton=page.locator("#loginForm > div:nth-child(12) > div > div.drag-btn")
    box=dropbutton.bounding_box()

    page.mouse.move(box['x']+box['width']/2,box['y']+box[ 'height']/2)

    page.mouse.down()

    mov_x=box['x']+box['width']/2+260

    page.mouse.move(mov_x,box['y']+box[ 'height']/2)

    page.mouse.up()

————————————————
版权声明:本文为CSDN博主「WEL测试」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/henni_719/article/details/125308728

posted @ 2023-01-09 17:43  爱家家的卡卡  阅读(793)  评论(0编辑  收藏  举报