Фактические характеристики здесь и фактически не определяют отношения между нажатием клавиши и изменением текущего значения входа .
Однако они читают, (подчеркните мое)
Для элементов ввода без определенного поведения активации ввода, но к которым применяются эти события, каждый раз, когда пользователь вызывает изменение значения элементабез явного действия фиксации пользовательский агент должен поставить в очередь задачу , чтобы запустить событие с именем input в элементе input, с атрибутом bubbles, инициализированным как true.Соответствующее событие изменения, если оно есть, будет запущено, когда элемент управления потеряет фокус.
Таким образом, фактически предполагается, что событие input
(которое вы должны слушать в любом случае) должно запускаться асинхронно.Поскольку это событие является свидетельством изменения текущего значения , я не думаю, что поведение Firefox при применении изменений, вызванных событием Key в следующем цикле событий, вряд ли является ошибкой;помните, что браузеры должны вносить это изменение асинхронно после смерти события (и больше не может быть отменено любым обработчиком).
Некоторые дополнительные заметки (которые могут быть связаны с реальной причиной, кстати), ввод комбинированного символа (например, ^
+ a
=> â
) У меня 100% репродукция в FF на macO(потому что да, я подозреваю, что это также может быть связано с ОС).
Но, конечно, даже если это не идет вразрез с какими-либо спецификациями, и даже если у вас есть простое исправление (прослушайте событие ввода) вы все равно можете подать отчет об ошибке по крайней мере за то, что он не ведет себя, как другие поставщики.