Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.12.2021, 02:46
Профессор
Отправить личное сообщение для savsoft Посмотреть профиль Найти все сообщения от savsoft
 
Регистрация: 03.01.2019
Сообщений: 162

Обработка клавиш
Всем привет,

Есть поле ввода, вводится слово и по нажатию клавиши Enter нажимается кнопка Check, поле ввода и кнопка скрываются, открывается спан с результатом, и открывается кнопка Next. Что-то типа

$('input').keydown( function(e) {
			
		if (e.keyCode == 13) {
			e.preventDefault();
			$("#check").click();
			$("#check").hide();
			$("#next").show();
			//Некоторые действия
		}	
			
});


Как сделать нажатие на кнопку#next тоже по нажатию Enter?
С другой клавишей получается, но по нажатию Enter кликается #check и сразу за ней появляется и кликается #next.
Ответить с цитированием
  #2 (permalink)  
Старый 08.12.2021, 08:24
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от savsoft
Как сделать нажатие на кнопку#next тоже по нажатию Enter?
Очевидно добавить аналогичный метод .click() и для next...
Ответить с цитированием
  #3 (permalink)  
Старый 08.12.2021, 14:53
Профессор
Отправить личное сообщение для savsoft Посмотреть профиль Найти все сообщения от savsoft
 
Регистрация: 03.01.2019
Сообщений: 162

Сообщение от ksa Посмотреть сообщение
Очевидно добавить аналогичный метод .click() и для next...
Тогда срабатывают обе кнопки за одно нажатие Enter. Нужно, чтобы при отображении Enter, нажалась check, скрылась, обработалась, отобразилась next. Юзер посмотрел результат и нажал Enter, кликнулась next.
Ответить с цитированием
  #4 (permalink)  
Старый 08.12.2021, 14:57
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

savsoft,
может минимальный макет сделать?
Ответить с цитированием
  #5 (permalink)  
Старый 08.12.2021, 15:09
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от savsoft
Нужно, чтобы при отображении Enter, нажалась check, скрылась, обработалась, отобразилась next. Юзер посмотрел результат и нажал Enter, кликнулась next.
Значит нужно распознавать состояние или этап на котором сейчас находимся...
На первом этапе - нажалась check, скрылась, обработалась, отобразилась next.
На втором этапе - кликнулась next...

И все это в одном обработчике.
Ответить с цитированием
  #6 (permalink)  
Старый 08.12.2021, 15:24
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

savsoft, что-то типа такого...
$('input').keydown( function(e) {
	if (e.keyCode == 13) {
		e.preventDefault();
		const on = $("#next")
		if(on.is(":visible")){
			on.click();
		} else{
			$("#check").click();
			$("#check").hide();
			on.show();
			//Некоторые действия
		}
	}	
});
Ответить с цитированием
  #7 (permalink)  
Старый 08.12.2021, 16:36
Профессор
Отправить личное сообщение для savsoft Посмотреть профиль Найти все сообщения от savsoft
 
Регистрация: 03.01.2019
Сообщений: 162

Делал ночью, тормознул, и обработку клавиш сделал, не переделывая основной функционал, а отдельно.

Спасибо всем за пинок в нужном направлении.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка нажатия двух клавиш одновременно. Temcher Events/DOM/Window 16 04.08.2019 01:10
Обработка нажатия двух клавиш 12345678 Events/DOM/Window 1 15.01.2013 15:41
Прокрутка страницы с помощью клавиш Mirgorod Events/DOM/Window 0 17.06.2010 22:39
Кроссбраузерная обработка нажатий клавиш micscr Общие вопросы Javascript 12 22.12.2009 19:16
обработка одновременно двух клавиш клавиатуры Destrifer Events/DOM/Window 8 20.12.2008 15:25