Java 我可以按像素定位元素(css位置)吗?爪哇,硒
我需要拖放一个图标来对网页上的列标题重新排序,每个标题都有自己的重新排序图标,并且无法通过任何元素定位方法(xpath/CSS选择器/link..等)来指定它 有没有办法通过像素(CSS位置)定位元素 以上是我的代码:Java 我可以按像素定位元素(css位置)吗?爪哇,硒,java,selenium,element,Java,Selenium,Element,我需要拖放一个图标来对网页上的列标题重新排序,每个标题都有自己的重新排序图标,并且无法通过任何元素定位方法(xpath/CSS选择器/link..等)来指定它 有没有办法通过像素(CSS位置)定位元素 以上是我的代码: 在CSS选择器中,“动态”是指那些动态生成的,所以我不想使用它 但是要执行act.dragAndDropBy我需要一个WebElement参数: dragandrop(源、目标) dragandropby(源代码、xOffset、yOffset) 146、214是我要将第一个重新
act.dragAndDropBy
我需要一个WebElement参数:dragandrop(源、目标)
dragandropby(源代码、xOffset、yOffset)
我认为这可以帮助您解决问题:
public void ReorderColumns() {
// Element which needs to drag.
WebElement From = driver.findElement(By.cssSelector(
"body > div:nth-child(3) > div > div.dynamic > div > div:nth-child(2) > div > div.dynamic.dynamic > svg"));
Actions act = new Actions(driver);
// Drag and Drop by Pixel.
act.dragAndDropBy(From, 146, 214).build().perform(); }
WebElement a = driver.findElement(By.cssSelector("your_selector"));
WebElement b = driver.findElement(By.cssSelector("your_selector"));
int x = b.getLocation().x;
int y = b.getLocation().y;
Actions actions = new Actions(driver);
actions.moveToElement(a)
.pause(Duration.ofSeconds(1))
.clickAndHold(a)
.pause(Duration.ofSeconds(1))
.moveByOffset(x, y)
.moveToElement(b)
.moveByOffset(x,y)
.pause(Duration.ofSeconds(1))
.release().build().perform();