Добрый день, для удобства пользователя ставлю курсор в инпуте с маской в начало строки 4 по счету, так ему остается только ввести код региона и далее номер, событие висит на клике. Все супер. Но! Как всегда да НО!) Если к примеру ошибка в поле номера то при клике курсор соответственно возвращается в начало 4 элементом, вопрос как можно решить такую проблему? Пример приложил
Ты при любом клике выбираешь 4 позицию. Сделай проверку, в духе если инпут пустой - тогда позиция 4, если не пустой или если длина маски больше значения - тогда выставляй в конец
Ловить .click надо, конечно.
Но я бы рекомендовал иметь свою переменную userInputFiltered.
По .focus() проверяешь, что там вообще.
И на какую позицию прыгнуть при получении фокуса (нелинейно из-за скобок/пробелов/dashes).
P.S. И не забывай про .paste().