Мне интересно сделать что-то вроде этого:
...
event.preventDefault();
...
el.dispatchEvent(event);
Я попробовал это в Firefox, который выдал исключение NS_ERROR_ILLEGAL_VALUE
.
Можно ли захватить событие и запустить его на более позднем этапе?
Для тех, кто заинтересован, вот моя цель высокого уровня. Я пытаюсь определить, когда подчеркивание набирается в текстовой области (т.е. shift + "-"). К сожалению, Firefox сообщает, что keyCode
и charCode
для этого события равны 0, то же самое значение, что и нажатие клавиши тильды (shift + "` "). Чтобы устранить неоднозначность, моя идея состоит в том, чтобы захватить событие, подавить его поведение по умолчанию и «отпустить» его на другой текстовой области. Затем я проверил бы значение этой (скрытой) текстовой области, чтобы определить, какая клавиша была нажата.
Обновление: Я использую onkeydown
, а не onkeypress
.