Как узнать разработчику сайта, как было сделано нажатие на элемент сайта?
Как справляются с этой задачей функции HumanEmulator?
Есть такой флаг, по которому разработчик сайта может узнать, клик на элемент страницы был сделан программно или мышью?
Это isTrusted, это булевое свойство события (далее флаг), только для чтения, имеет значение True, если событие было сгенерировано пользователем и False, если оно вызвано тригером.
Как получить значение этого флага просто для чего добавим через консоль код разработчика подписчик, такого вида:
document.getElementById("myBtn").addEventListener("click", function(event){
console.log('isTrusted = ' + event.isTrusted);
}
);
Значение флага для события клик будет выведено на консоль (в табе Console, Панели разработчика).
И так результаты кликов от HumanEmulator Studio:
- Интерфейс DOM метод click() — isTrusted = false
- Интерфейс DOM метод meta_click() — isTrusted = true
- Интерфейс DOM метод send_mouse_click() — isTrusted = true
- Интерфейс DOM метод mouse_click — isTrusted = true
- Интерфейс DOM метод send_mouse_left_down(0,0) — отдельно не фиксируется как клик слушателем!
- Интерфейс DOM метод mouse_left_down(0,0) — отдельно не фиксируется как клик слушателем!
- Интерфейсы DOM методы (один за одним) mouse_left_down(0,0) и mouse_left_up(0,0) засчитываются как один клик — isTrusted = true
- Интерфейсы DOM методы (один за одним) send_mouse_left_down(0,0) и send_mouse_left_up(0,0) засчитываются как один клик — isTrusted = true