В мобильных приложениях и веб-интерфейсах для ввода числовых значений критически важно учитывать специфику виртуальной клавиатуры. Основная цель — упрощение и ускорение ввода чисел, а также предотвращение ошибок ввода. Библиотека AutoNumeric предоставляет гибкие инструменты для настройки числового режима, которые позволяют оптимально адаптировать поведение полей ввода под мобильные устройства.
Для активации числового режима на мобильных устройствах используется
атрибут inputMode. В контексте AutoNumeric это достигается
через конфигурацию параметра inputMode:
new AutoNumeric('#inputNumber', {
inputMode: 'numeric'
});
Доступные значения:
numeric — стандартная цифровая клавиатура с числами и
десятичной точкой.decimal — клавиатура, ориентированная на ввод
десятичных значений.tel — альтернативная цифровая клавиатура, которая
иногда удобнее для быстрых числовых вводов.text — отключение специализированного числового режима,
используется для обычного текстового ввода.Использование корректного типа клавиатуры обеспечивает правильное поведение на iOS и Android, снижает риск появления лишних символов и повышает удобство работы с формами.
AutoNumeric позволяет задавать строгий контроль над числовым форматом, что особенно важно на мобильных устройствах с ограниченным размером экрана и повышенной вероятностью опечаток. Ключевые параметры:
decimalPlaces — количество десятичных знаков.digitGroupSeparator — разделитель тысяч.decimalCharacter — символ десятичной части (точка или
запятая в зависимости от локали).minimumValue и maximumValue — допустимый
диапазон чисел.Пример конфигурации для ввода положительных десятичных чисел с разделителем тысяч:
new AutoNumeric('#inputNumber', {
decimalPlaces: 2,
digitGroupSeparator: ',',
decimalCharacter: '.',
minimumValue: '0',
maximumValue: '10000',
inputMode: 'decimal'
});
Такой подход гарантирует, что пользователь на мобильном устройстве сможет быстро вводить только корректные значения.
На мобильных устройствах особенно важно управлять состоянием поля ввода при получении и потере фокуса. AutoNumeric предоставляет следующие возможности:
selectOnFocus) — при активации курсор выделяет все число,
упрощая замену значения.Пример:
new AutoNumeric('#inputNumber', {
selectOnFocus: true,
modifyValueOnWheel: false
});
Для финансовых или научных приложений часто требуется ввод отрицательных значений. AutoNumeric поддерживает настройку отрицательных чисел через параметры:
allowNegative — включение или запрет отрицательных
значений.negativeSignCharacter — символ отрицательного
числа.negativeBracketsTypeOnBlur — отображение отрицательных
чисел в скобках при потере фокуса.new AutoNumeric('#inputNumber', {
allowNegative: true,
negativeSignCharacter: '-',
negativeBracketsTypeOnBlur: '()'
});
На мобильных устройствах это позволяет корректно отображать и вводить отрицательные значения без конфликтов с виртуальной клавиатурой.
Для мобильных устройств важна экономия пространства и предотвращение сдвигов интерфейса при активации клавиатуры. AutoNumeric предоставляет следующие подходы:
maximumValue и minimumValue.decimalPlaces и
digitGroupSeparator.modifyValueOnWheel: false).Различные локали используют разные символы для разделителей тысяч и десятичных точек. AutoNumeric позволяет полностью контролировать локализацию:
digitGroupSeparator — символ группировки разрядов.decimalCharacter — символ десятичного разделителя.currencySymbol — для отображения валютных
значений.new AutoNumeric('#inputNumber', {
decimalCharacter: ',',
digitGroupSeparator: '.',
currencySymbol: '€',
currencySymbolPlacement: 'p'
});
Это обеспечивает соответствие региональным стандартам и упрощает ввод для пользователей на мобильных устройствах.
AutoNumeric поддерживает автоматическое ограничение вводимых значений
и их валидацию в реальном времени. На мобильных устройствах это
критично, поскольку ошибки ввода труднее исправлять. Параметры
minimumValue, maximumValue и
onInvalidPaste позволяют:
new AutoNumeric('#inputNumber', {
minimumValue: '0',
maximumValue: '1000',
onInvalidPaste: 'ignore'
});
Для удобства работы с мобильными устройствами AutoNumeric позволяет контролировать изменение значений через свайпы и колесо мыши. На маленьких сенсорных экранах рекомендуется отключать изменение значения колесом или случайными жестами:
new AutoNumeric('#inputNumber', {
modifyValueOnWheel: false
});
Это предотвращает непреднамеренные изменения чисел при прокрутке страницы или взаимодействии с элементами формы.