2016-05-17 2 views
0

Я хочу использовать JavaScript, чтобы определить, когда нажата пробел. Я хочу исключить все события, в которых сосредоточен любой ввод. Возможно ли это с чистым JS?Обнаружение пробела, когда текстовые входы не сфокусированы

Примечание: основной вопрос этого вопроса - исключение всех событий, в которых сосредоточен вход.

+0

Возможный дубликат [ответить на нажатие клавиши JavaScript] (http://stackoverflow.com/questions/7600892/response-to-key-press-javascript) – iwein

+0

Главное в этом вопросе - исключить все события, в которых сосредоточен вход. – quemeful

+0

, что другой вопрос - это просто ключевое обнаружение прессы – quemeful

ответ

5
// capture keyboard input 
document.onkeypress = function (e) { 

    // check for spacebar 
    if (e.keyCode == 32) { 

     // check if an input is currently in focus 
     if (document.activeElement.nodeName.toLowerCase() != "input") { 

      // prevent default spacebar event (scrolling to bottom) 
      e.preventDefault(); 

      // do stuff you want ... 
     } 
    } 
}; 

другой элемент, чтобы наблюдать за ПРОБЕЛ фокуса:

  • TEXTAREA
  • кнопка
+2

Я знаю, что ОП не упоминал об этом, но, вероятно, хорошая идея также исключить текстовую область. – dman2306

+0

да, это правда – quemeful

+2

... и '

Смежные вопросы