Если окно содержит PDF-файл, это окно браузера, а не модальное всплывающее окно JavaScript (предупреждение, подтверждение, приглашение)
Он определен для запуска без активных всех обычных меню и т. Д., Но это все еще окно браузера. Вы можете прикрепить к нему, как описано в разделе Watir Wiki о новых окнах браузера , используя URL или заголовок, так как вы знаете оба из них (учитывая HTML, который вы нам показали).
Если вы используете Watir-Webdriver, используйте его команды переключения окон. Прямо сейчас watirspec для этого - ваша лучшая ссылка на поддерживаемые методы и как они работают.
EDIT
Спасибо за ссылку. Хотя вышесказанное будет верно для нового окна браузера, это не то, с чем вы столкнулись. Все, что у вас есть, - это все внутри HTML браузера, созданного в DOM на лету с помощью JavaScript. Это все стандартные элементы HTML, с которыми легко взаимодействовать, как только вы узнаете, что происходит (на самом деле это ИМХО проще, чем всплывающее окно или отдельное окно)
Используйте инструменты разработчика IE, после того, как вы щелкнете по ссылке, которая отображает это «окно», щелкните значок на панели инструментов инструментов dev, чтобы обновить DOM в инструментах dev, и вы сможете это увидеть.
Внешний контейнер выглядит как div класса 'dialog', который на данный момент уникален в DOM.
Под этим элементом управления находятся три элемента div с классами «spread_close», «spread_minimize», «spread_maximize». Есть три таблицы, которые содержат графические элементы для верхней, боковых сторон и нижней части «окна», но там есть фактическое содержимое ZERO, это просто визуальный фрейм окна.
Существует также iframe, который перекрывает это окно, которое, я думаю, было бы содержимым (я не могу загрузить его, может быть, потому что я не авторизован для этого или что-то)
Если вы просто хотите закрыть окно, попробуйте следующее:
browser.div(:class => 'spread_close').click
Поскольку он появляется из-за большого количества JS-кода на стороне клиента, вам может потребоваться использовать что-то вроде метода when_present после нажатия на ссылку, прежде чем вы начнете взаимодействовать с ней. например, если все, что вы хотите сделать, это щелкнуть ссылку, чтобы открыть ее, а затем закрыть ее, вы сделаете что-то вроде этого
browser.link(:text => 'Security Statement').click
browser.div(:class => 'spread_close').when_present.click