Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   JS / jQuery — почему не получается выполнить программный клик по кнопке? (https://javascript.ru/forum/events/66450-js-jquery-%E2%80%94-pochemu-ne-poluchaetsya-vypolnit-programmnyjj-klik-po-knopke.html)

antonium 15.12.2016 19:58

JS / jQuery — почему не получается выполнить программный клик по кнопке?
 
Делаю бота для одного сайта на JS. Подгружаю свой JS файл через закладку в браузере, есть такой способ.

Использую браузер Google Chrome, пробую с помощью jQuery выполнить клик по кнопке на этом сайте, но почему то не получается.

Не рекламы ради конечно, собственно сам сайт вот: alpari[dot]ru/ru/binary_options/

Кликать необходимо по кнопке "ВЫШЕ". Пробовал двумя способами:
$("div.bali-grid__call_put button.bali-button_type_green").trigger("click");

var event = $.Event('click'); 
event.clientX = 1010; 
event.clientY = 805; 
$('div.bali-grid__call_put button.bali-button_type_green').trigger(event);


Но клик не происходит. Возможно как то сделан запрет на программный клик, но пока не понял как.

Qaplok 17.07.2018 00:28

Я, конечно понимаю - полтора года прошло. Просто тоже работаю над тем же сайтом и хотелось бы обменяться опытом, тем более, что они вскоре переходят на новую платформу.
По кнопкам Вверх\Вниз нажимаю отлавливанием их позиций на экране.
d=document.getElementsByClassName("bali-button bali-button_type_green bali-button_call_put bali-button_call")[0].getBoundingClientRect();
console.log("UP_X1X2Y1Y2 X1:"+d.left+", Y1:"+d.top+", X2:"+d.right+", Y2:"+d.bottom+", ");

Логи консоли вывожу в текстовое окно и там смотрю появление координат, прибавляю с десяток пикселей и тыкаю уже программно по этому месту.
Окно программы, естественно делаю несворачиваемым. Но работает, даже если поверх него открыт например браузер.


Часовой пояс GMT +3, время: 20:20.