Как расфокусировать курсор из поля ввода текста в транспортире - PullRequest
0 голосов
/ 04 июня 2019

У меня есть текстовое поле ввода, заполненное датой. Я должен очистить текст даты и щелкнуть курсор где-нибудь на веб-странице или на каком-либо элементе, чтобы выполнить другие действия.

Теперь проблема в том, что я не могу переместить курсор на какой-либо другой элемент или где-нибудь на веб-странице. Курсор остается в этом поле ввода после очистки текста

Я пробовал следующие способы:

  1. mouseMove: я пытаюсь переместить курсор куда-то на веб-странице и щелкаю по нему, но не работает.

  2. blur (): использовал этот, чтобы потерять фокус, но не работает.

    var input = element(by.css('input[placeholder = "Choose a date"]'))
    var someOtherElement = element(by.id('otherElement'));
    input.click().clear().then((function) {
    browser.actions().mouseMove(someOtherElement).click().perform();
    });
    

Факт: после очистки текста даты курсор остается на вводе текста. оно не выходит из этого текстового поля.

Ожидается: я хочу, чтобы курсор потерял фокус, переместился на какой-то другой элемент и щелкнул по нему, чтобы выполнить другие действия.

1 Ответ

0 голосов
/ 10 июня 2019

Есть ли у вас какие-либо ошибки?Было бы здорово, если бы вы вставили это здесь.На самом деле я подозреваю, что someOtherElement не существует или не активируется.

Можете ли вы сделать еще один снимок ниже фрагмента, сделав функцию с кодом ниже async ()?

var input = await element(by.css('input[placeholder = "Choose a date"]'));
var someOtherElement = await element(by.id('otherElement'));

await input.click().clear().then(() => {
   someOtherElement.click();
})
.then(() => console.log('finished'));
...