Selenium如何实现dropbar移动

时间:2023-03-10 03:50:48
Selenium如何实现dropbar移动

遇到这个拖拽的dropbar,如何实现呢,,

经过网上查找,可以用Action的方式实现或者js来控制

原理:移动按钮的同时,数字也随着变化

Selenium如何实现dropbar移动

解决方法:1.最简单的就是直接在文本框输入相应的数字

2.利用js来控制

3.Actions来执行(无法获取相应的x.y坐标位置,放弃)

第二种方式来做:

 var js_ChangeRadio = string.Format("document.querySelector('#bar1 img').style='left: 100px'");
((IJavaScriptExecutor) driver).ExecuteScript(js_ChangeRadio);

  可是遇到的问题就是,js执行后,页面的数字并没有发生改变

图1:

Selenium如何实现dropbar移动

在console执行:document.querySelector('#bar1 img').style.left=" 100px"/document.querySelector('#bar1 img').style=“left: 100px"

图2:按钮位置改变,但是数字并没有随着变化,暂时未找到解决问题的方法,以及为什么会出现这个现象(网络?)

Selenium如何实现dropbar移动

经过询问开发,,原来js执行的只是改变了style,并没有执行事件,,鼠标拖动释放后执行了如下dragstop事件,那如何执行drapstop事件呢???

$(".DropBtn").bind('dragstop', function (event, ui) {
DoBtnPosition($(this));
//alert($(this).position().left);
});