FullEmulationMouseWheel и число прокручиваемых пикселей

webbaster

Client
Регистрация
19.07.2013
Сообщения
125
Благодарностей
10
Баллы
18
Доброго дня.
Предполагается, что код
C#:
instance.ActiveTab.FullEmulationMouseWheel(0,100);
должен прокручивать страницу на 100 пикселей, а фактически прокручивает на 80.
Почему?
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
Доброго дня.
Предполагается, что код
C#:
instance.ActiveTab.FullEmulationMouseWheel(0,100);
должен прокручивать страницу на 100 пикселей, а фактически прокручивает на 80.
Почему?
у всех по разному. была как то тема, мерялись у кого на сколько прокручивает.
да и зачем она эта точность до пикселя ? главное крутит же.
 

webbaster

Client
Регистрация
19.07.2013
Сообщения
125
Благодарностей
10
Баллы
18
Когда крутит колесико человек, то оно прокручивает ровно 100 пикселей. Отклонение может рассматриваться как действия робота.
Много сессий, созданных на FullEmulation в Я.Метрике определяются как действия робота. Вот пытаюсь побороть.
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
Когда крутит колесико человек, то оно прокручивает ровно 100 пикселей. Отклонение может рассматриваться как действия робота.
Много сессий, созданных на FullEmulation в Я.Метрике определяются как действия робота. Вот пытаюсь побороть.
а если человек не пользуется колесиком и скролит через полоску или через зажим 3-й кнопки мышки ? и у него скролл постоянно то 57, то 145 пикселей. этот человек будет постоянно помечатся как робот ?
мне кажется тут борьба с ветрянной мельницей идет :-)
 

rastvl

Client
Команда форума
Регистрация
16.01.2019
Сообщения
656
Благодарностей
1 061
Баллы
93

webbaster

Client
Регистрация
19.07.2013
Сообщения
125
Благодарностей
10
Баллы
18
а если человек не пользуется колесиком и скролит через полоску или через зажим 3-й кнопки мышки ? и у него скролл постоянно то 57, то 145 пикселей. этот человек будет постоянно помечатся как робот ?
мне кажется тут борьба с ветрянной мельницей идет :-)
Тогда у него мышь уходит за пределы окна браузера.
Просто не знаю уже на что грешить. Никак не побороть проблему.
 

rastvl

Client
Команда форума
Регистрация
16.01.2019
Сообщения
656
Благодарностей
1 061
Баллы
93
уходит за пределы окна браузера
Есть такое, а если через mouse 3, то отслеживается событие нажатия на эту среднюю кнопку мыши.
В принципе, можно как раз-таки нажимать mouse3, а затем скроллить. FullEmulationMouseClick в первом параметре принимает какую кнопку мыши нажимать.
В итоге наверн получается
C#:
instance.ActiveTab.FullEmulationMouseClick("middle", "click"); //Нажали
instance.ActiveTab.FullEmulationMouseWheel(); //Прокрутили
instance.ActiveTab.FullEmulationMouseClick("middle", "click"); //Еще раз нажали
Но какой-то колхоз выходит... Как вариант, попробовать реализовать свою эмуляцию мыши через WinAPI
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
уж если колхозить, то по полной :-)
C#:
instance.ActiveTab.FullEmulationMouseMove(100,100);
instance.ActiveTab.FullEmulationMouseClick("middle","down");
Thread.Sleep(500);
instance.ActiveTab.FullEmulationMouseMove(100,150);
Thread.Sleep(5000);  // здесь нужен цикл контроля скрола
instance.ActiveTab.FullEmulationMouseClick("middle", "up");
 

rastvl

Client
Команда форума
Регистрация
16.01.2019
Сообщения
656
Благодарностей
1 061
Баллы
93
instance.ActiveTab.FullEmulationMouseClick("middle", "up");
Up и Down в мышке корректно разве работают?
В клавиатуре, насколько я помню, очень не очень, если то, что в классе Emulator
Да и я когда через среднюю скролю, то кликаю два раза - в начале и в конце, а не зажимаю
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
Up и Down в мышке корректно разве работают?
В клавиатуре, насколько я помню, очень не очень, если то, что в классе Emulator
Да и я когда через среднюю скролю, то кликаю два раза - в начале и в конце, а не зажимаю
конечно нормально, а как иначе драг&дроп делать ?
 

artsmm

Client
Регистрация
03.10.2018
Сообщения
1 136
Благодарностей
196
Баллы
63
Тогда у него мышь уходит за пределы окна браузера.
Просто не знаю уже на что грешить. Никак не побороть проблему.
Может просто сделать вычисление конца экрана? и не перекручивать за него
 

Spelin

Client
Регистрация
24.09.2019
Сообщения
446
Благодарностей
122
Баллы
43

webbaster

Client
Регистрация
19.07.2013
Сообщения
125
Благодарностей
10
Баллы
18
потерто
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)