【发布时间】:2020-04-06 05:01:50
【问题描述】:
我需要将元素从 iframe 外部移动到 iframe。我的元素面板不是 iframe 的一部分,但我的画布在 iframe 中并且想要将元素移动到其中。
我试过下面的代码:
element_source = self._selenium.find_element(By.XPATH,
'//div[@class="gjs-block-label"][contains(.,"Tooltip")]')
element_target=self._selenium.find_element(By.CLASS_NAME,'gjs-frame')
actions = ActionChains(self._driver)
actions.drag_and_drop(element_source, element_target).perform()
time.sleep(5)
看起来问题是我必须在移动元素之前切换到 iframe,但在这里我看不到这种可能性,因为 drag_and_drop 是我的 element_source 不在的组合方法iframe 和 element_target 是 iframe 本身。
所以如果我在拖放之前切换,它甚至找不到element_source。
这是我正在处理的演示页面:https://grapesjs.com/demo.html
在上面的演示中,左侧是 iframe,右侧面板是元素集合。
【问题讨论】:
-
你检查过this
-
@supputuri - 我会确认的。
-
如果你用一个小sn-p重现你的问题,你会更容易得到答案。
-
@IslamElshobokshy - 我尝试了我发布的问题代码。我也在 selenium github 上发布了相同的内容,但仍然没有运气:github.com/SeleniumHQ/selenium/issues/8342
标签: javascript jquery python-2.7 selenium-webdriver iframe