Перейти к содержимому

Фотография

Скроллить до загрузки сообщений в чат.

protractor e2e js

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 6

#1 ttkeino

ttkeino

    Новый участник

  • Members
  • Pip
  • 7 сообщений

Отправлено 13 мая 2020 - 08:14

Здравствуйте. Имеется чат. Нужно проскроллить чат вверх до того момента, пока не загрузятся более старые сообщения. 

Как я пытаюсь это сделать:

await browser.actions().mouseMove(page.getFirstofMess()).perform();

, где getFirstofMess()

getFirstofMess() {
  return browser.element(by.xpath('//app-message[1]'));
}

По итогу я могу дойти только до 1-ого видимого сообщения в чате и все.
Прикрепленный файл  Screenshot_3.jpg   13,29К   0 Количество загрузок:

 

 

Есть ли возможность доскроллить несколько пикселей до начала загрузки? 


  • 0

#2 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 13 мая 2020 - 13:19

А там в mouseMove есть же вроде и с координатами, оно по умолчанию работает в центр элемента, а вы тогда делайте y=0 , x=ширина/2


  • 0

#3 ttkeino

ttkeino

    Новый участник

  • Members
  • Pip
  • 7 сообщений

Отправлено 13 мая 2020 - 13:56

await browser.actions().mouseMove(page.getFirstofMess(), {x: 0, y: 0}).doubleClick().perform();

Поставил doubleClick(), чтобы было видно, что он выделяет. Если ставлю в x половину ширины, то выделяет само содержимое сообщения. Соответственно, если убираю doubleClick(), то дальше он не скроллит. 

А там в mouseMove есть же вроде и с координатами, оно по умолчанию работает в центр элемента, а вы тогда делайте y=0 , x=ширина/2

Прикрепленный файл  Screenshot_4.jpg   9,17К   0 Количество загрузок:


  • 0

#4 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 13 мая 2020 - 14:08

Попробуйте y - отрицательным. И подождать после мува.


  • 0

#5 ttkeino

ttkeino

    Новый участник

  • Members
  • Pip
  • 7 сообщений

Отправлено 14 мая 2020 - 05:36

Не могу точно пока сказать почему, но для меня сейчас работает вот это: 

await browser.actions().mouseMove(page.getFirstofMess(), { x: -100, y: 0 }).doubleClick().perform();

 

Попробуйте y - отрицательным. И подождать после мува.

 

з.ы. Причем без doubleclick() не работает 


  • 0

#6 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 14 мая 2020 - 11:01

Нуууу, бывает... Главное продвинулись.


  • 1

#7 ttkeino

ttkeino

    Новый участник

  • Members
  • Pip
  • 7 сообщений

Отправлено 15 мая 2020 - 11:09

Спасибо

Нуууу, бывает... Главное продвинулись.


  • 0



Темы с аналогичным тегами protractor, e2e, js

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных