клик по элементу

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113
Здравствуйте, сейчас в 7 версии есть фича - подводить мышку к элементу по которому кликаем , но сам клик производится именно по этому элементу, а не обычный клик мышью :-)
---------------
вот пример:
проще всего навести мышь на элемент с id="user_1222222" и с эмулировать нажатие мыши
HTML:
        <div id="user_1222222">

            <div class="click">кликать сюда</div>
        </div>
но сейчас приходится искать именно тот элемент на который нужно нажать...

может сделать возможность выбора - кликать именно по элементу или эмулировать нажатие
 

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 453
Благодарностей
5 913
Баллы
113
Не очень понятен смысл....
Чем клик по элементу отличается от обычного клика мыши? Веб-сайт воспринимает это как-то по-разному?
 

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113
Не очень понятен смысл....
Чем клик по элементу отличается от обычного клика мыши? Веб-сайт воспринимает это как-то по-разному?
Да, в данном примере кликать нужно по div'у с class'ом "click" - и только по нему, но навести мышку легче (удобнее) на div с id "user_1222222" - так как я знаю id нужного usera
Код:
<div id="user_1222222">
            <div class="click">кликать сюда</div>
</div>
<div id="user_133333">
            <div class="click">кликать сюда</div>
</div>
...
<div id="user_199999">
            <div class="click">кликать сюда</div>
</div>
наведя мышку на div с id "user_1222222" - можно с эмулировать клик мыши - и клик придется на нужный div'у с class'ом "click"
--------------------
надеюсь понятно объяснил :-)
если нет - спрашивайте
 

zarufakis

Client
Регистрация
22.03.2019
Сообщения
1 702
Благодарностей
1 078
Баллы
113
А может топ сайты так и палят, что мы кликаем не на нужный див/класс, а абы куда удобней?
 

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113
А может топ сайты так и палят, что мы кликаем не на нужный див/класс, а абы куда удобней?
вот для этого и предлагаю сделать возможность кликать мышью --- ты навел на удобный тебе элемент а клик будет по верхнему элементу

Сейчас я использую C# - подводим мышь к элементу и кликаем на выбор (2 вида клика)
C#:
var tab = instance.ActiveTab;
//Ищем поле
var elSearchField = tab.FindElementByXPath("//button[@name='create_profile']", 0);
//Находим координату середины поля по x
int toX = int.Parse(elSearchField.GetAttribute("leftInBrowser")) + elSearchField.Width/2;
//Находим координату середины поля по y
int toY = int.Parse(elSearchField.GetAttribute("topInBrowser")) + elSearchField.Height/2;
//Ведём мышь к найденным координатам
tab.FullEmulationMouseMove(toX, toY);
//Микропауза (200-600 мс)
Thread.Sleep(Global.Classes.rnd.Next(2,6)*100);
//Клик
//tab.FullEmulationMouseClick("left", "click"); //  <----------------- это эмуляция мышиного клика (!)
elSearchField.Click(); // <----------------- это клик по элементу в не зависимости где мышь
//Микропауза (200-600 мс)
Thread.Sleep(Global.Classes.rnd.Next(2,6)*100);
просто комментирую не нужную строку
C#:
tab.FullEmulationMouseClick("left", "click"); //  <----------------- это эмуляция мышиного клика (!)
elSearchField.Click(); // <----------------- это клик по элементу в не зависимости где мышь
 
Последнее редактирование:
  • Спасибо
Реакции: Igorii и leha52rus

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 453
Благодарностей
5 913
Баллы
113
Да, в данном примере кликать нужно по div'у с class'ом "click" - и только по нему, но навести мышку легче (удобнее) на div с id "user_1222222" - так как я знаю id нужного usera
Код:
<div id="user_1222222">
            <div class="click">кликать сюда</div>
</div>
<div id="user_133333">
            <div class="click">кликать сюда</div>
</div>
...
<div id="user_199999">
            <div class="click">кликать сюда</div>
</div>
наведя мышку на div с id "user_1222222" - можно с эмулировать клик мыши - и клик придется на нужный div'у с class'ом "click"
--------------------
надеюсь понятно объяснил :-)
если нет - спрашивайте
Я бы сказал что это уже частный случай и его можно решить методами FullEmulationMouseMove.
 

ukrainec2014

Client
Регистрация
12.05.2017
Сообщения
351
Благодарностей
52
Баллы
28
вопрос удален мной, так как ответ сам нашел :-)
 
Последнее редактирование:

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