를 사용하여 위치에서 여러 요소를 감지합니다.내가 그런 문제가 자바 스크립트
이 링크는 겹쳐서 클릭 할 수 없습니다. 그러나! 나는 내 사업부를하지 날을 반환하지만 링크 :(어떻게이 겹치는 링크를 div에 감지 할 수 document.elementFromPoint(6,83)
을 실행하기 위해 노력하고있어 때?
또한 해결책이 될 수있는 Java + WebDriver하지만 JS이 필요합니다.
! (I 충분하지 등급이) :.이
UPD를 주셔서 감사합니다. 그것은 이상한 내가 해결책을 발견 하지만, 요소의 왼쪽 상단의 좌표를 요구 document.elementFromPoint
경우 그것이 중복도 같은 요소를 반환합니다 때문이다 요소의 가운데에서 겹치는 부분을 확인할 수있는 이유는 무엇입니까?
나는이 같은 문제 또는 요소 WebDriver에서 클릭 문제와 사람을 도움이되기를 바랍니다
public static boolean isElementClickable(WebElement element) { return element.isDisplayed() && element.isEnabled() && element.equals(getJSExecutor(getDriverFromContext(element)) .executeScript("return document.elementFromPoint" + "(" + Integer.toString(((Locatable)element).getLocationOnScreenOnceScrolledIntoView().getX() + (element.getSize().getWidth()/2)) + ", " + Integer.toString(((Locatable)element).getLocationOnScreenOnceScrolledIntoView().getY() + (element.getSize().getHeight()/2)) + ")")); }
: 나는 WebDriver에 대해 물었을 때, 여기에 솔루션입니다.
크고 느린 솔루션 인 것 같습니다. 나는 내 페이지에 대해 몇 가지 실험을했으며 링크와 관련된 행동 만 보여줍니다. 예를 들어 같은 div가 겹쳐진 좌표 250/170의 텍스트 필드를 입력하고'document.elementFromPoint (250,170)'이이 입력을 정확하게 반환합니다. 오히려 이상한 행동입니다. 내 div의 Z- 색인은 199, 링크 3, 입력 또한 3입니다. – sickfar