Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.09.2015, 21:10
hhh hhh вне форума
Профессор
Отправить личное сообщение для hhh Посмотреть профиль Найти все сообщения от hhh
 
Регистрация: 19.11.2013
Сообщений: 150

keypress и повторяющийся код
Добрый день! Нужен одинаковый результат при двух событиях. Если вынести код внутри, в отдельную функцию, то при блюре ее вызвать можно.
$('input[type="text"].on('blur', myFunction);

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

$('input[type="text"].on('blur', function() {
  console.log('success');
});

$('input[type="text"].on('keypress', function() {
   if (keyCode == 13) {
    console.log('success');
   }
});
Ответить с цитированием
  #2 (permalink)  
Старый 19.09.2015, 21:34
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от hhh
Нужен одинаковый результат при двух событиях.
а зачем тогда условие?

$('input[type="text"]').on('keypress blur', function(e) {
    alert(e.type)
})
Ответить с цитированием
  #3 (permalink)  
Старый 19.09.2015, 21:41
hhh hhh вне форума
Профессор
Отправить личное сообщение для hhh Посмотреть профиль Найти все сообщения от hhh
 
Регистрация: 19.11.2013
Сообщений: 150

Сообщение от laimas
а зачем тогда условие?
Чтобы происходило одинаковое событие при блюре или при нажатии на enter
Ответить с цитированием
  #4 (permalink)  
Старый 19.09.2015, 21:56
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Значит вопрос коряво поставлен, получается что не по событиям, а при потере фокуса и нажатию только клавиши Enter. Проверяйте:

e.type == keypress должно быть нажатие именно Enter
Ответить с цитированием
  #5 (permalink)  
Старый 19.09.2015, 22:01
hhh hhh вне форума
Профессор
Отправить личное сообщение для hhh Посмотреть профиль Найти все сообщения от hhh
 
Регистрация: 19.11.2013
Сообщений: 150

Спасибо, что подсказали. я получил новый опыт. Вышло так
$('input[typte=text].on('keypress blur', function (e) {
  if (e.keyCode === 13 || e.type === 'blur') {
    console.log('success')
  }
 });
Ответить с цитированием
  #6 (permalink)  
Старый 19.09.2015, 22:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

hhh,
$('input[type="text"]').on('keypress blur', function(e) {
   if(e.type == 'blur' || e.which == 13)  myFunction()
})

или

редактирование таблицы

Последний раз редактировалось рони, 19.09.2015 в 23:21.
Ответить с цитированием
  #7 (permalink)  
Старый 19.09.2015, 22:16
hhh hhh вне форума
Профессор
Отправить личное сообщение для hhh Посмотреть профиль Найти все сообщения от hhh
 
Регистрация: 19.11.2013
Сообщений: 150

рони, thx
Ответить с цитированием
  #8 (permalink)  
Старый 19.09.2015, 23:04
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от рони
event.which == 13 && $(this).trigger("blur")
Ошибка будет, да и не выгодно - обработчик blur нужно отдельно определять.
Ответить с цитированием
  #9 (permalink)  
Старый 19.09.2015, 23:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от laimas
Ошибка будет
где?
Ответить с цитированием
  #10 (permalink)  
Старый 19.09.2015, 23:17
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от рони
где?
event не определена, да и скопировано прямо с ошибкой автора.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
javascript обфускатор или как правильно скрыть код syegorius Общие вопросы Javascript 1 19.09.2012 02:58
Не работает код Kendrick Internet Explorer 5 12.09.2012 16:14
Требуется выводить код рекламного блока Adsense из файла JavaScript??? speedflow Элементы интерфейса 0 26.05.2012 15:50
Как создать bodyclick код royksopp Общие вопросы Javascript 8 14.10.2011 16:39
код странно отрабатывает комбинацию клавиш ffx Общие вопросы Javascript 4 20.01.2011 10:58