Существует ли перекрестный браузер способ обнаружить живые изменения в поле ввода?
Живым я имею в виду не, когда поле теряет фокус, и не на следующем нажатии клавиши, и так далее. Сразу или что-то как он.
Используя комбинации jQuery и .change()
, .keyup()
, .bind('paste')
и так далее я могу получить рабочее живое обнаружение изменения в некоторых браузерах, но не всех. Используя различные комбинации заставит его работать несколько в других браузерах.
Самой хитрой вещью получить работу является управление мышью полем ввода - выбор текста и перемещение его (который по существу вырезан и вставлен), щелкая правой кнопкой и вставляя или сокращая, и т.д. По некоторым причинам ровный .mousedown()
и .mouseup()
кажется, не сокращаю его.
Единственное решение перекрестного браузера, о котором я могу думать прямо сейчас, состоит в том, чтобы проверить, что поле ввода оценивает каждый 100-so миллисекунды и сравнивает значение с хранимой суммой. Но это походит на излишество, когда основанное на событии решение так приближается.
Существует ли плагин jQuery, который уже делает это? Или там некоторый другой путь состоит в том, чтобы достигнуть этого?
Для завершения обработчиков изменений и клавиш можно добавить обработчики для cut/copy/paste. Они работают в Firefox >=3, IE, Safari и Chrome (но не в Opera/Konqueror).
Охватит ли это все для вашего случая использования?