У меня возникли проблемы с выбором элемента из раскрывающегося списка Javascript (т. е. элементы в раскрывающемся списке не скрыты в дереве DOM, их вообще нет, пока не будет нажата ссылка). Я пытался использовать класс Actions следующим образом:
Actions cursor = new Actions(driver);
cursor.moveToElement(linkThataDropsMenu).perform();
cursor.click();
Я пытался использовать функцию clickAndWait(), но, по-видимому, ее нет в библиотеках Java webDriver, и я пробовал множество вариантов приостановки и щелчка в своем коде, включая двойной щелчок. clickAndHold() также ничего не делает.
Ниже показано дерево DOM после создания меню. Единственное, что меняется при нажатии, это вставка div class="menu"
<div id="divIdActive_2" class="data number active" style="min-height: 21px;">
<a class="opencnl" href="#">
<span id="opencnlSpan" class="active" style="background-color:
transparent;">800-852-2222</span>
</a>
<img class="tollFree" title="Display name(s) for Toll free function properly on
Verizon Wireless devices, but may be omitted by other carriers on
their devices." src="img/nil.gif">
<input id="customNum" type="hidden" value="8008522222" name="number_2">
<div class="menu">
<a class="edit" href="#">Change Custom Number</a>
<a class="copy" href="#">Copy Settings for 0 Selected Lines</a>
<a class="clear" href="#">Clear Settings For this Line</a>
</div>
</div>
Вот что странно: я могу заставить меню выпасть из IDE, используя click() или clickAndWait() и точно такой же локатор. Из моего Java-кода я могу использовать свои локаторы для сбора текста элемента, который я хочу щелкнуть, но я не могу щелкнуть элемент. В моем Java-коде есть сотни других команд щелчка, которые отлично работают, но не здесь. Есть идеи? Спасибо хотя бы за то, что прочитали!