@MalGym

Как автоматически нажать на ОК в confirm?

Есть скрипт, который следит за таймером. Как только таймер показывает 00:00:00, он нажимает кнопку, после чего выскакивает окно confirm и там нужно имитировать нажатие клавиши ОК, после чего таймер начинает отсчет. И так все по кругу.

Мой код

$( document ).ready(function() {

var event = jQuery.Event('keypress');
event.which = 13; 
event.keyCode = 13; 
 

setInterval(function(){
	var time = $('.timer').text();
	if (time == '00:00:00') {	
  		$('.mbtn.green_box_my').trigger('click');
	}
	
}, 2000);

});



Тут сделал нажатие на кнопку при всех нулях на таймере, а как имитировать нажатие на ОК в confirm?

Пытался имитировать нажатие Enter, но как-то безуспешно.
  • Вопрос задан
  • 572 просмотра
Пригласить эксперта
Ответы на вопрос 3
Sanasol
@Sanasol Куратор тега JavaScript
нельзя просто так взять и загуглить ошибку
Никак, confirm/prompt/alert блокируют выполнение скриптов пока юзер не сделает что-то сам.

Если нужны управляемые конфирмы используйте какую-нибудь библиотеку с кастомными всплывающими окнами, которые возможно закрыть и все что угодно с ними сделать.
https://sweetalert2.github.io
Ответ написан
Комментировать
rockfeeler
@rockfeeler
Фронтендер, дизайнер, верстальщик-перфекционист
Видимо, окно не успевает появиться в ДОМ. Надо дать ему время на это.

setInterval(function () {
	var time = $('.timer').text();
	if (time == '00:00:00') {
		$('.mbtn.green_box_my').trigger('click');
		
		//	ждем, пока появится конфирм
		setTimeout(function() {
			$('кнопка_в_окне_конфирма').trigger('click');
			// или, если там форма
			$('форма_в_окне_конфирма').submit();
		}, 1000);
	}
}, 2000);
Ответ написан
@Tiny924
Легко, можно сделать так:
window.confirm = () =>{
    return true;
}

Теперь все твои confirm будут приниматься сами.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы