Я хочу отслеживать изменения, сделанные в текстовой области в режиме реального времени.Каждое изменение должно быть либо
- вставкой с начальным смещением и содержимым строки, либо
- удалением с начальным смещением и длиной
Начальное смещениеи длина указываются в байтах текста в кодировке UTF-8, но эта деталь не является центральной для проблемы.Решение должно работать во всех современных браузерах как для настольных компьютеров, так и для мобильных устройств.
beforeinput
и input
выглядят многообещающе, за исключением плохой поддержки браузера и документации.keyup
и лайки могут работать, если бы не мобильные и странные программные клавиатуры.Событие input
отслеживает вставленный текст в поддерживающих браузерах, но не содержит информации о местоположении и вообще не полезно для удаления.