2015-09-15 2 views

ответ

0

Существует различный способ перейти к кадру. Пожалуйста, поделитесь HTML-кодом, если вам нужен точный код для переключения на соответствующее приложение. вы можете попробовать с помощью метода ниже. Лучше индекс использовать, если ваш кадр не любое имя т.д.,

driver.switchTo().frame(index) 

заменить индекс с 0 первым, и если он не работает, то попробуйте с 1, а затем 2 и т.д. один на один

Более подробную информацию

driver.switchTo().frame() имеет несколько перегрузок.

driver.switchTo().frame(name or id) 

Здесь у вашего iframe нет идентификатора или имени, поэтому не для вас.

driver.switchTo().frame(index) 

Это последний вариант выбора, потому что использование индекса недостаточно стабильно, как вы могли себе представить. Если это ваш единственный IFrame на странице, попробуйте

driver.switchTo().frame(0)

driver.switchTo().frame(iframe_element) 

Наиболее распространенным. Вы определяете свой iframe как другие элементы, а затем передаете его в метод.

Здесь расположение его по названию атрибутов кажется лучшим.

driver.switchTo().frame(driver.findElement(By.cssSelector("iframe[title='Fill Quote']"))); 
// driver.switchTo().frame(driver.findElement(By.xpath(".//iframe[@title='Fill Quote']"))); 
0

Скорее всего, ваш iframe не отображается или ваше окно неактивно.

в Python:

driver.switch_to_default_content() 
    wait.until(EC.frame_to_be_available_and_switch_to_it("yourFrame")) 

в Java:

driver.switchTo().defaultContent(); 
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.tagName("yourFrame"))); 
Смежные вопросы