x11 Posted June 18, 2020 Posted June 18, 2020 Как быть с табуляцией в мобильных браузерах? При вводе данных на виртуальной клавиатуре есть кнопка Далее или Перейти. Когда пользователь ее нажимает, то курсор переходит на следующий элемент ввода. Так вот, проблема в том, что не понятно, как приложение или браузер выбирает - куда переходить, на какой элемент при нажатии на кнопку Далее. Если элементы ввода находятся в одном контейнере, например, в одном unimFieldContainer, то переход осуществляется согласно TabOrder. Но когда нажимаешь Далее в последнем элементе этого контейнера, то переход в другой элемент другого контейнера осуществляется странно - вверх по экрану. К сожалению, у компонентов типа unimFieldContainer нет свойства TabOrder. На первой картинке показано, как должно быть. На второй показано, куда перескакивает курсор, если нажать кнопку Далее на виртуальной клавиатуре. Quote
x11 Posted June 18, 2020 Author Posted June 18, 2020 На этом снимке показано, что курсор (фокус ввода) переходит с нижнего элемента ввода в элемент, который находится в середине формы (экрана). Не могу понять закономерность. Почему именно в тот? Что указывает браузеру - куда переходить? Quote
Sherzod Posted June 18, 2020 Posted June 18, 2020 1 hour ago, x11 said: Что указывает браузеру - куда переходить? Аттрибут tabindex. 1 hour ago, x11 said: На этом снимке показано, что курсор (фокус ввода) переходит с нижнего элемента ввода в элемент, который находится в середине формы (экрана). Не могу понять закономерность. Почему именно в тот? Пожалуйста, отправьте запрос в службу поддержки. Временное решение: procedure TMainmForm.UnimFormReady(Sender: TObject); begin with UnimEdit1 do begin TabOrder := 10; JSInterface.JSCall('inputElement.dom.setAttribute', ['tabindex', TabOrder]); end; with UnimEdit2 do begin TabOrder := 11; JSInterface.JSCall('inputElement.dom.setAttribute', ['tabindex', TabOrder]); end; with UnimEdit3 do begin TabOrder := 12; JSInterface.JSCall('inputElement.dom.setAttribute', ['tabindex', TabOrder]); end; with UnimEdit4 do begin TabOrder := 13; JSInterface.JSCall('inputElement.dom.setAttribute', ['tabindex', TabOrder]); end; with UnimEdit5 do begin TabOrder := 14; JSInterface.JSCall('inputElement.dom.setAttribute', ['tabindex', TabOrder]); end; with UnimEdit6 do begin TabOrder := 15; JSInterface.JSCall('inputElement.dom.setAttribute', ['tabindex', TabOrder]); end; end; Quote
x11 Posted June 18, 2020 Author Posted June 18, 2020 1 hour ago, Sherzod said: Аттрибут tabindex. а у контейнеров он есть? Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.