Как управлять выпадающим меню из элементов ul и li в Chromeless - PullRequest
0 голосов
/ 21 мая 2018

Я сталкиваюсь с выпадающим меню, состоящим из элементов ul и li:

<ul class="o_dropdown_theme_values">
    <li class="" tabindex="-1">
        <label class="myclass" tabindex="0">Category 1</label>
    </li>
    <li class="" tabindex="-1">
        <label class="myclass" tabindex="0">Category 2</label>
    </li>
    ...
</ul>

Я знаю два способа изменения выпадающего меню с помощью Chromeless:

.evaluate((dropDownValue) => {
    select = document.querySelector('select#category1')
    select.value = dropDownValue
}, dropDownValue)

и

.click('#id') 
.type("first letters of option", '#id') 
.click('#id option[value="'+dropDownValue+'"]') 

но из-за структуры меню с ul и li я не могу их использовать.

Я также пытался нажать на меню и затем нажать клавишу табуляции много разпри необходимости выберите правильный вариант, как если бы я перемещался по меню с помощью клавиатуры.Но клавиши Tab, которые я отправляю, не принимаются во внимание.Я смог отправить в меню ОДИН (и только один) ключ ВНИЗ (а не TAB), но не более того.

Как я могу манипулировать этим видом меню?Любой обходной путь, основанный на JavaScript, будет оценен.

1 Ответ

0 голосов
/ 02 июня 2018

Я нашел способ в конце.

Используйте команду .focus (#CSSselector), чтобы выделить правильный вариант, а затем подтвердите выбор нажатием .press (13) (клавиша Enter).

Это третий способ управления выпадающими меню в Chromeless

...