код вычитания JavaScript (-)
40700 просмотра
7 ответа
Хорошо, мне нужен мой код, чтобы проверить, была ли нажата кнопка минус / вычитание /, если она была нажата, я хочу, чтобы всплыло окно с предупреждением. Я попытался с обоими 109
и 189
ключевыми кодами, но я все еще не получаю желаемый результат. хотя я нажимаю, "-"
я не получаю это окно с предупреждением
Ответы (7)
31 плюса
JavaScript- коды charCodes , которые вы тестируете во время события нажатия клавиши, являются ASCII . 109 - правильный код ключа , если он используется в событии keydown или keyup.
"-" имеет charCode 45.
Автор: Dave Ward Размещён: 13.12.2009 11:0710 плюса
1.event.keyCode = 109 - '-' на цифровой клавиатуре
2.event.keyCode = 189 is'- 'в буквенной клавиатуре на chrome
3.event.keyCode = 173 - '-' в клавиатуре Alphabate на клавиатуре Firefox и на Chrome 173 Клавиша для отключения звука включена |
Автор: user5943894 Размещён: 18.02.2016 05:059 плюса
Не делайте этого в keydown
обработчике событий - вы полагаетесь на представления разных браузеров о кодах клавиш и возможных различиях между кодами клавиш для разных типов клавиатур. Сделайте это в keypress
событии, и тогда вы получите вместо этого код символа, который вы действительно хотите.
document.onkeypress = function(evt) {
evt = evt || window.event;
var charCode = evt.which || evt.keyCode;
var charStr = String.fromCharCode(charCode);
if (charStr == "-") {
alert("Minus!");
}
};
Вся необходимая вам информация о ключевых событиях JavaScript: http://unixpapa.com/js/key.html
Автор: Tim Down Размещён: 13.12.2009 11:356 плюса
Вы можете обнаружить ключевые коды следующим образом:
Автор: Rubens Farias Размещён: 13.12.2009 11:105 плюса
Опубликовать код Это работает для меня:
document.onkeydown = function (e) {
if (e.keyCode === 109 || e.keyCode === 189) {
alert('minus sign pressed');
}
};
Полный список кодов ключей здесь: http://www.cambiaresearch.com/c4/702b8cd1-e5b0-42e6-83ac-25f0306e3e25/Javascript-Char-Codes-Key-Codes.aspx
Автор: Matt Размещён: 13.12.2009 11:094 плюса
Люди отходят от event.keyCode
и event.charCode
из - за несовместимых реализаций в разных браузерах. Вместо этого используйте event.code
. Это string
поле.
Большинство браузеров поддерживают Array.includes
, поэтому я склонен делать следующее:
if (['-', 'Minus', 'NumpadSubtract'].includes(e.code)) {
// do something
}
Автор: Jeff Fairley
Размещён: 15.06.2018 08:20
3 плюса
Я надеюсь, что это работает для вас, он обнаруживает нажатые клавиши пользователей, и если это тот, который вы ищете, он отображает предупреждение, вы можете изменить фактическую клавишу на любую другую клавишу.
function detectSubstract(e)
{
var evtobj=window.event? event : e //distinguish between IE's explicit event object (window.event) and Firefox's implicit.
var unicode=evtobj.charCode? evtobj.charCode : evtobj.keyCode
var actualkey=String.fromCharCode(unicode)
if (actualkey=="-")
{
alert('You pressed the minus key')
}
}
document.onkeypress=detectSubstract
Автор: johnnyArt
Размещён: 13.12.2009 11:33
Вопросы из категории :
- javascript Как определить, какой из указанных шрифтов был использован на веб-странице?
- javascript Валидация клиентской стороны ASP.Net
- javascript Длина объекта JavaScript
- javascript Получение текста из выпадающего списка
- javascript Скрипт входа со скрытыми кнопками
- javascript Как автоматически изменить размер текстовой области с помощью Prototype?
- keycode код вычитания JavaScript (-)
- keycode Как определить, что Ctrl + R был нажат?
- keycode Где я могу найти список кодов виртуальных клавиш Mac?
- keycode Как узнать, является ли .keyup () символьным ключом (jQuery)
- keycode На какой ключ ссылается e.metaKey в JavaScript MouseEvent?
- keycode Как перехватить event.keyCode и заменить его на другой keyCode?
- subtraction Как вычесть X дней из даты, используя календарь Java?
- subtraction Вычтите n часов из DateTime в Ruby
- subtraction Вычитание между двумя SQL-запросами
- subtraction Как процессор выполняет вычитание?
- subtraction PHP вычитает значения массива